Agent skill

Here Now

by ahmetb in ahmetb/dotfiles

USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!!. An agent skill from ahmetb/dotfiles.

Apache-2.0Auto-check passedDocuments & Office

Install Here Now

skills CLI
$ npx skills add ahmetb/dotfiles --skill here-now -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ahmetb/dotfiles here-now --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ahmetb/dotfiles.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/here-now .claude/skills/here-now && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
here-now
GitHub stars
139
Token cost
~3k tokens
SKILL.md length
1,286 words
Files
3 (incl. scripts)
Skills in repo
6
Repo updated
First seen
Licence
Apache-2.0

At a glance

USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!!. An agent skill from ahmetb/dotfiles.

  • Works in 3 steps: api-key {key} flag (CI/scripting only —… → $HERENOW_API_KEY environment variable → ~/.herenow/credentials file (recommended…
  • Asked to publish this
  • SKILL.md covers Current docs, Requirements, Create a site and Update an existing site, plus 10 more sections
  • Runs Shell scripts from its folder; calls curl and npx; reaches here.now and bright-canvas-a7k2.here.now; needs HERENOW_API_KEY and HERENOW_DRIVE_TOKEN

What it does

Here Now is an agent skill from ahmetb/dotfiles. USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!! here.now lets agents publish websites and files to live URLs in seconds. Publish HTML, documents, images, PDFs, videos, and static files to live URLs at {slug}.here.now or custom domains. Use when asked to "publish this", "host this", "deploy this", "share this on the web", "make a website", "put this online", "create a webpage", "generate a URL", "build a chatbot", "password protect this site", "make this site private", or "share this site with only certain…

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including scripts (for example `scripts/drive.sh` and `scripts/publish.sh`).

It sits in Documents & Office. The repository describes itself as: Ahmet's dotfiles and macOS customizations. The licence is Apache-2.0.

When your agent uses it

  • Asked to publish this
  • Share this on the web
  • Put this online
  • Create a webpage

Example prompts

  • “publish this”
  • “host this”
  • “deploy this”
  • “/here-now”

Requirements

  • Node.js
  • A Bash shell
  • A credential in HERENOW_API_KEY
  • A credential in HERENOW_DRIVE_TOKEN

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. api-key {key} flag (CI/scripting only — avoid in interactive use)
  2. $HERENOW_API_KEY environment variable
  3. ~/.herenow/credentials file (recommended for agents)

What it can do on your machine

Read from SKILL.md and the folder at commit a435fa0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • curl
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • here.now
    • bright-canvas-a7k2.here.now

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • HERENOW_API_KEY
    • HERENOW_DRIVE_TOKEN
    • API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Here Now loads about 3k tokens when it runs. Until then it costs about 197 tokens; SKILL.md has 1,286 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~197
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from ahmetb/dotfiles at commit a435fa0, republished under its Apache-2.0 licence (© ahmetb). 1,286 words, ~2,956 tokens.

Download SKILL.mdSave it as .claude/skills/here-now/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
here-now
description
USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!! here.now lets agents publish websites and files to live URLs in seconds. Publish HTML, documents, images, PDFs, videos, and static files to live URLs at {slug}.here.now or custom domains. Use when asked to "publish this", "host this", "deploy this", "share this on the web", "make a website", "put this online", "create a webpage", "generate a URL", "build a chatbot", "password protect this site", "make this site private", or "share this site with only certain people". here.now also includes workspaces — shared team accounts where Sites belong to the team and serve at {label}.{workspace}.here.now — use when asked to "publish this to our team workspace", "share this with my team", or "put this in our company workspace".

here.now

Skill version: 1.18.0

here.now lets agents publish websites and files to live URLs in seconds.

The core primitive is a Site: publish a file or folder and get a live URL at {slug}.here.now or a custom domain. Every Site has access control: public link (default), password, or restricted invite-only access.

here.now also includes workspaces — shared team accounts where Sites belong to the team and serve at {label}.{workspace}.here.now (see "Publish to a workspace" below).

To install or update (recommended): npx skills add heredotnow/skill --skill here-now -g

For repo-pinned/project-local installs, run the same command without -g.

Current docs

Before answering questions about here.now capabilities, features, or workflows, read the current docs:

→ https://here.now/docs

Read the docs:

  • at the first here.now-related interaction in a conversation
  • any time the user asks how to do something
  • any time the user asks what is possible, supported, or recommended
  • before telling the user a feature is unsupported

Topics that require current docs (do not rely on local skill text alone):

  • Site access control (passwords and restricted access)
  • workspaces (team accounts, membership, label URLs)
  • Drives and Drive sharing
  • custom domains
  • Site Data
  • public profiles
  • proxy routes and service variables
  • limits and quotas
  • SPA routing
  • owner Site search
  • Site analytics
  • error handling and remediation
  • feature availability

If docs and live API behavior disagree, trust the live API behavior.

If the docs fetch fails or times out, continue with the local skill and live API/script output. Prefer live API behavior for active operations.

Requirements

  • Required binaries: curl, file, jq
  • Optional environment variable: $HERENOW_API_KEY
  • Optional Drive token variable: $HERENOW_DRIVE_TOKEN
  • Optional credentials file: ~/.herenow/credentials
  • Bundled helpers:
    • ./scripts/publish.sh for publishing sites
    • ./scripts/drive.sh for private Drive storage

Create a site

bash
./scripts/publish.sh {file-or-dir}

Outputs the live URL (e.g. https://bright-canvas-a7k2.here.now/).

Under the hood this is a three-step flow: create/update -> upload files -> finalize. A site is not live until finalize succeeds.

Without an API key this creates an anonymous site that expires in 24 hours. With a saved API key, the site is permanent.

File structure: For HTML sites, place index.html at the root of the directory you publish, not inside a subdirectory. The directory's contents become the site root. For example, publish my-site/ where my-site/index.html exists — don't publish a parent folder that contains my-site/.

You can also publish raw files without any HTML. Single files get a rich auto-viewer (images, PDF, video, audio). Multiple files get an auto-generated directory listing with folder navigation and an image gallery.

Update an existing site

bash
./scripts/publish.sh {file-or-dir} --slug {slug}

The script auto-loads the claimToken from .herenow/state.json when updating anonymous sites. Pass --claim-token {token} to override.

Authenticated updates require a saved API key.

Signed-in users also have public profiles. Agents can help users show or hide Sites on their profile and manage profile settings through the API documented at https://here.now/docs#profile.

Publish to a workspace

Workspaces are shared team accounts: Sites published into one belong to the team, not the publishing member, and get a memorable URL at {label}.{workspace}.here.now.

bash
./scripts/publish.sh {file-or-dir} --workspace {subdomain}

Requires a saved API key and membership in the workspace. List the user's workspaces (and valid subdomains) with GET /api/v1/accounts. Workspace Sites default to member-only access; the script reports the team URL as publish_result.account_url.

For everything else — creating workspaces, invites and auto-join, workspace domains and variables, label renames — read the current docs:

→ https://here.now/docs#workspaces

Site access control

A Site uses one access mode at a time:

  • anyone_with_link (default): anyone with the URL can view.
  • password: visitors must enter a shared password.
  • restricted: invite-only; only verified email addresses or email domains the owner allows can view.

Workspace-owned Sites use a different set of modes: account_members (the default — visitors sign in and must be workspace members) or public, optionally with a password. restricted allowlists are personal-Site-only and return 409 workspace_access_mode_unsupported on workspace Sites. See https://here.now/docs#workspace-access.

Manage access with GET/PATCH /api/v1/publish/{slug}/access (passwords via the metadata endpoint). Restricted access requires a claimed Site. The PATCH replaces the full allowlists — read, merge, then write. Before working with access control, read the current docs:

→ https://here.now/docs#access-control

Use a Drive

Use a Drive when the user wants private cloud storage for agent files: documents, context, memory, plans, assets, media, research, code, and anything else that should persist without being published as a website.

Every signed-in account has a default Drive named My Drive.

bash
./scripts/drive.sh default
./scripts/drive.sh ls My Drive
./scripts/drive.sh put My Drive notes/today.md --from ./notes/today.md
./scripts/drive.sh cat My Drive notes/today.md
./scripts/drive.sh share My Drive --perms write --prefix notes/ --ttl 7d

Use scoped Drive tokens for agent-to-agent handoff. If you receive a herenow_drive share block, use its token as Authorization: Bearer <token> against api_base, respect pathPrefix when present, and preserve ETags on writes. A pathPrefix of null means full-Drive access. If the skill is available, prefer ./scripts/drive.sh; otherwise call the listed API operations directly.

Client attribution

Pass --client so here.now can track reliability by agent:

bash
./scripts/publish.sh {file-or-dir} --client cursor

This sends X-HereNow-Client: cursor/publish-sh on publish API calls. If omitted, the script sends a fallback value.

Show full SKILL.md (511 more words)Show less

API key storage

The publish script reads the API key from these sources (first match wins):

  1. --api-key {key} flag (CI/scripting only — avoid in interactive use)
  2. $HERENOW_API_KEY environment variable
  3. ~/.herenow/credentials file (recommended for agents)

To store a key, write it to the credentials file:

bash
mkdir -p ~/.herenow && echo "{API_KEY}" > ~/.herenow/credentials && chmod 600 ~/.herenow/credentials

IMPORTANT: After receiving an API key, save it immediately — run the command above yourself. Do not ask the user to run it manually. Avoid passing the key via CLI flags (e.g. --api-key) in interactive sessions; the credentials file is the preferred storage method.

Never commit credentials or local state files (~/.herenow/credentials, .herenow/state.json) to source control.

Getting an API key

To upgrade from anonymous (24h) to permanent sites:

  1. Ask the user for their email address.
  2. Request a one-time sign-in code:
bash
curl -sS https://here.now/api/auth/agent/request-code \
  -H "content-type: application/json" \
  -d '{"email": "user@example.com"}'
  1. Tell the user: "Check your inbox for a sign-in code from here.now and paste it here."
  2. Verify the code and get the API key:
bash
curl -sS https://here.now/api/auth/agent/verify-code \
  -H "content-type: application/json" \
  -d '{"email":"user@example.com","code":"ABCD-2345"}'
  1. Save the returned apiKey yourself (do not ask the user to do this):
bash
mkdir -p ~/.herenow && echo "{API_KEY}" > ~/.herenow/credentials && chmod 600 ~/.herenow/credentials

State file

After every site create/update, the script writes to .herenow/state.json in the working directory:

json
{
  "publishes": {
    "bright-canvas-a7k2": {
      "siteUrl": "https://bright-canvas-a7k2.here.now/",
      "claimToken": "abc123",
      "claimUrl": "https://here.now/claim?slug=bright-canvas-a7k2&token=abc123",
      "expiresAt": "2026-02-18T01:00:00.000Z"
    }
  }
}

Before creating or updating sites, you may check this file to find prior slugs. Treat .herenow/state.json as internal cache only. Never present this local file path as a URL, and never use it as source of truth for auth mode, expiry, or claim URL.

What to tell the user

For published sites:

  • Always share the siteUrl from the current script run.
  • Read and follow publish_result.* lines from script stderr to determine auth mode.
  • When publish_result.account_url is non-empty (workspace publishes), share it as the primary team URL alongside siteUrl.
  • When publish_result.auth_mode=authenticated: tell the user the site is permanent and saved to their account. No claim URL is needed.
  • When publish_result.auth_mode=anonymous: tell the user the site expires in 24 hours. Share the claim URL (if publish_result.claim_url is non-empty and starts with https://) so they can keep it permanently. Warn that claim tokens are only returned once and cannot be recovered.
  • Never tell the user to inspect .herenow/state.json for claim URLs or auth status.

For Drives:

  • Do not describe Drive files as public URLs.
  • Tell the user Drive contents are private unless shared with a scoped token.
  • When sharing access with another agent, prefer a scoped token with a narrow pathPrefix and short TTL.

publish.sh options

FlagDescription
--slug {slug}Update an existing site instead of creating
--workspace {subdomain}Publish into a workspace (team account) you belong to
--claim-token {token}Override claim token for anonymous updates
--title {text}Viewer title (non-HTML sites)
--description {text}Viewer description
--ttl {seconds}Set expiry (authenticated only)
--client {name}Agent name for attribution (e.g. cursor)
--base-url {url}API base URL (default: https://here.now)
--allow-nonherenow-base-urlAllow sending auth to non-default --base-url
--api-key {key}API key override (prefer credentials file)
--spaEnable SPA routing (serve index.html for unknown paths)

Beyond publish.sh

For Drive operations, use ./scripts/drive.sh or the Drive API. For broader account and Site management — Site Data, search, analytics, profiles, delete, metadata, access control, domains, variables, proxy routes, duplication, and more — see the current docs:

→ https://here.now/docs

Full docs: https://here.now/docs

© ahmetb, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (scripts) in .claude/skills/here-now of ahmetb/dotfiles.

  • SKILL.md
  • scripts/drive.sh
  • scripts/publish.sh

Open the folder on GitHubat commit a435fa0

Compare with similar skills

Here Now next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Here Now compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Here Now this skillahmetb/dotfiles139—~3kAutomated safety check: PassApache-2.0
Markdown Article FormatterJimLiu/baoyu-skills27k6 repos~3.5kAutomated safety check: PassMIT
MarkitdownImCa0/just-laws78114 repos~3.2kAutomated safety check: NotesMIT
Obsidian MarkdownAtmosphere/atmosphere3.8k20 repos~1.3kAutomated safety check: PassApache-2.0
DOCXrvdbreemen/OTGW-firmware20733 repos~4.3kAutomated safety check: PassProprietary
Word Document Reader and WriterHKUDS/DeepTutor41k—~2.5kAutomated safety check: PassApache-2.0

Similar skills

  • Markdown Article Formatter

    JimLiu/baoyu-skills

    Reformats plain text or Markdown articles with frontmatter, a title, a summary, headings, bold, lists and code blocks, and saves a separate formatted copy.

    27k GitHub starsUsed in 6 repos~3.5k tokens
    Documents & OfficeAuto-check passed
  • Markitdown

    ImCa0/just-laws

    Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.

    781 GitHub starsUsed in 14 repos~3.2k tokens
    Documents & OfficeAuto-check: notes
  • Obsidian Markdown

    Atmosphere/atmosphere

    Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.

    3.8k GitHub starsUsed in 20 repos~1.3k tokens
    Documents & OfficeAuto-check passed
  • DOCX

    rvdbreemen/OTGW-firmware

    A skill your agent uses whenever the user wants to create, read, edit, or manipulate Word documents (.docx files).

    207 GitHub starsUsed in 33 repos~4.3k tokens
    Documents & OfficeAuto-check passed
  • Reads, creates and edits Word .docx files with python-docx, and drops to raw OOXML for tracked changes, comments and byte-exact edits.

    41k GitHub stars~2.5k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Crossposting

    wasp-lang/wasp

    Crosspost Wasp blog articles (MDX) to DEV.to and Medium. An agent skill from wasp-lang/wasp.

    19k GitHub stars~1.1k tokensUpdated today
    Documents & OfficeAuto-check passed

More from ahmetb/dotfiles

  • Here Now Internal

    ahmetb/dotfiles

    Upload and share files on here.now (https://here-now.chimera-logarithm.ts.net), Baseten's internal artifact-sharing service.

    139 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Sweep Comments

    ahmetb/dotfiles

    Hold code comments and docstrings to a strict quality bar. An agent skill from ahmetb/dotfiles.

    139 GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed
  • Commit PR

    ahmetb/dotfiles

    How to name branches, writing commit titles/messages and sending PRs with correct format

    139 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Declaudish

    ahmetb/dotfiles

    Translate text written in "Claudish" — the characteristic prose style of Claude and Claude Code — into plain, direct, idiomatic English.

    139 GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed
  • Report Styling

    ahmetb/dotfiles

    Design system for single-file HTML engineering reports and deep dives — two-column sticky-TOC layout, green-accented semantic color coding, timeline step lists, code-anchored prose.

    139 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Here Now

What does Here Now do?

USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!!. An agent skill from ahmetb/dotfiles. Here Now is an agent skill from ahmetb/dotfiles. USE THIS SKILL ONLY ON PUBLIC OPEN SOURCE REPOS!!!

When should I use Here Now?

Here Now fits situations like: asked to publish this; share this on the web; put this online; create a webpage.

How do I install Here Now in Claude Code?

Run `npx skills add ahmetb/dotfiles --skill here-now -a claude-code`. Or copy the skill folder (.claude/skills/here-now in ahmetb/dotfiles) into .claude/skills/here-now in your project. Claude Code loads it when a task matches its description.

How do I install Here Now in Codex?

Run `npx skills add ahmetb/dotfiles --skill here-now -a codex`. Or copy the skill folder (.claude/skills/here-now in ahmetb/dotfiles) into .agents/skills/here-now in your project. Codex loads it when a task matches its description.

Can I use Here Now in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ahmetb/dotfiles --skill here-now -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/here-now, .gemini/skills/here-now, .github/skills/here-now and .opencode/skills/here-now in your project.

What does Here Now need to run?

Going by SKILL.md and its folder, Here Now needs a shell for the scripts in its folder, the command-line tools its instructions call (curl and npx) and credentials named HERENOW_API_KEY, HERENOW_DRIVE_TOKEN and API_KEY. Our summary lists: Node.js; A Bash shell; A credential in HERENOW_API_KEY; A credential in HERENOW_DRIVE_TOKEN.

Does Here Now access the network?

SKILL.md names 2 domains. In commands or code: here.now and bright-canvas-a7k2.here.now; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Here Now safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Here Now use?

Here Now is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Here Now use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Here Now?

Skills that share tags, products or a category with Here Now: Markdown Article Formatter (JimLiu/baoyu-skills, 27k stars), Markitdown (ImCa0/just-laws, 781 stars), Obsidian Markdown (Atmosphere/atmosphere, 3.8k stars) and DOCX (rvdbreemen/OTGW-firmware, 207 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Here Now?

ahmetb (a GitHub user) maintains it in ahmetb/dotfiles, which has 139 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on August 24, 2026.

Source: ahmetb/dotfiles on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.