list-specs
List SpecForge specs — either every spec in the store (mode "all") or just the specs attached to this session (mode "mine").
Skill by NitinJ
Chalk Labs
Need help deploying list-specs?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/nitinj-list-specs
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 1, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/list-specs
Tools it pre-approves 3
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Read,Bash,AskUserQuestion
What's inside
- Skill name
list-specs- Description
- List SpecForge specs — either every spec in the store (mode "all") or just the specs attached to this session (mode "mine"). Use when the user asks to "list specs", "show all specs", "what specs do I have open", or wants to open/detach a spec. Starts or reuses the daemon, prints a table, and offers to open/detach.
- License
- MIT
- Allowed tools
- Read,, Bash,, AskUserQuestion
- Instructions
- 70 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (1)
- SKILL.md
SKILL.md (first lines)
# list-specs
`${CLAUDE_PLUGIN_ROOT}` below denotes the installed plugin directory. Claude and
Pi export it; Codex provides the exact value in SpecForge SessionStart context.
Substitute that value in every path and shell command.
## Run the CLI
- **All specs** (mode "all"): `node "${CLAUDE_PLUGIN_ROOT}/lib/specforge-cli.mjs" listall`
- **This session's specs** (mode "mine"): `node "${CLAUDE_PLUGIN_ROOT}/lib/specforge-cli.mjs" list`
The default output is compact: one line per spec — `id status type attached title` —
where `attached` reads `mine` when it names the calling session (so the picker can
classify rows from the lines alone), a session id when another session holds it,
or `free`. `listall` adds `index: <url>` (and ensures the daemon is up). Pass
`--json` for the machine shape: `session` plus `rows`
(`{ id, title, type, status, attached }`, where `attached` is a session id or
`free`). `list` reads straight from the store (no daemon needed). The picker's
actions handle the daemon themselves: `open` starts it when needed and returns a
URL, while `detach` is store-only — so both work whether or not the daemon was
already running.
## Present the result
Render `rows` as a compact, numbered table — **# · id · title · type · status · attached** —
showing `attached` as `free`, `mine` (this session), or `held: <first 8 of the id>`. For
"all", also print `indexUrl` (the browser index links each row to `/spec/<id>`).
## Then offer to open / detach (the picker)
Classify each row (the compact output renders `mine` for the calling session;
`--json` output carries the raw session id instead):
| `attached` | meaning | action |
| --- | --- | --- |
| `free` | unattached | **open** (attach to this session) |
| `mine` (compact), or equals `session` (`--json`) | attached here | **detach** |
| any other id | held by another live session | none (show it greyed) |
If at least one row is actionable, call **AskUserQuestion** ("Open or detach a spec?").
AskUserQuestion allows **4 options max**, so offer up to **3** actionable specs plus a
**"Just viewing"** option (4 total):
- free specs → label `Open · <title>` (use `<id8>` if untitled)
- this session's specs → label `Detach · <title>`
- always include **"Just viewing"** (does nothing)
The user can also pick **"Other"** (always available) and type any id from the table.
If more than 3 rows are actionable, show the 3 most useful (free specs first) and note
that "Other" accepts any id.
Act on the choice:
- **Open `<id>`** → `node "${CLAUDE_PLUGIN_ROOT}/lib/specforge-cli.mjs" open <id>`
(attaches it to this session; fails if another live session holds it). Print the
returned `url`. In Codex, finish the turn; the host-owned watcher delivers browser
comments automatically. Do not start a watcher. In Claude Code, arm one background
`review-wait` if none is running; Pi delivery is extension-managed.
- **Detach `<id>`** → `node "${CLAUDE_PLUGIN_ROOT}/lib/specforge-cli.mjs" detach <id>`.
Confirm it's freed.
- **Other `<id>`** → open it if free, detach it if it's attached here, else say it's
held by another session.
- **Just viewing** → stop, no action.
Skip the picker when nothing is actionable. In "mine" mode with no rows, say no spec
is attached to this session and point to the list-all command to open one — that is
`/specforge:listall` under Claude Code and `/spec-listall` under Pi. Name the one
your harness registers; the other does not exist there.From NitinJ/specforge, MIT.
More from NitinJ/specforge
- 0.579score
generate-template
NitinJ
Write a spec template from a prompt.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
export
NitinJ
Export a spec from the store to Google Docs.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
migrate-spec
NitinJ
Move one existing spec onto the SpecForge component library.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
tune-templates
NitinJ
Optimize the SpecForge spec templates from the review-comment history.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
write-review
NitinJ
Review a SpecForge spec as a reviewer agent, and file the review as a child spec of the spec being reviewed.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
export-md
NitinJ
Export a spec from the store as a GitHub-flavoured markdown file, plus a sidecar directory holding its diagrams.
SkillBFreshness: B★ 5Claude Code +9 - 0.575score
create-spec
NitinJ
Author a new house-style spec into the SpecForge store.
SkillBFreshness: B★ 5Claude Code +9 - 0.575score
convert-spec
NitinJ
Convert an existing design/spec file into a SpecForge spec in the store.
SkillBFreshness: B★ 5Claude Code +9 - 0.575score
review-spec
NitinJ
Process a submitted batch of human comments on a spec in the store: reply to each thread inline and amend the spec accordingly.
SkillBFreshness: B★ 5Claude Code +9 - 0.574score
start-specforge
NitinJ
Start or reuse the local SpecForge daemon and return its browser index URL.
SkillBFreshness: B★ 5Claude Code +9
Signals
- Stars
- 5
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Sep 9, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/NitinJ/specforge
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from NitinJ
- 0.579score
generate-template
NitinJ
Write a spec template from a prompt.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
export
NitinJ
Export a spec from the store to Google Docs.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
migrate-spec
NitinJ
Move one existing spec onto the SpecForge component library.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
tune-templates
NitinJ
Optimize the SpecForge spec templates from the review-comment history.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
write-review
NitinJ
Review a SpecForge spec as a reviewer agent, and file the review as a child spec of the spec being reviewed.
SkillBFreshness: B★ 5Claude Code +9 - 0.579score
export-md
NitinJ
Export a spec from the store as a GitHub-flavoured markdown file, plus a sidecar directory holding its diagrams.
SkillBFreshness: B★ 5Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get list-specs running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
list-specs skill. Agent Mart. https://agentmart.dev/skills/nitinj-list-specs (last updated 2026-10-24)