Skip to content

feat: agent contract — --json, path positional, exit codes, capture skill#1

Merged
heznpc merged 1 commit into
mainfrom
feat/agent-contract
Jun 9, 2026
Merged

feat: agent contract — --json, path positional, exit codes, capture skill#1
heznpc merged 1 commit into
mainfrom
feat/agent-contract

Conversation

@heznpc

@heznpc heznpc commented Jun 9, 2026

Copy link
Copy Markdown
Member

Agent-first surfaces for shotkit, without MCP (dropped by design — heavy file-producing build tool; see Non-goals):

  • shotkit [path] --json → stdout is exactly one {ok, outDir, produced[]} object (progress + build output → stderr); exit codes 0/1/2.
  • skills/capture/SKILL.md (Agent Skills format, ships in the npm tarball) + an AGENTS.md run-block for every shell-having agent.
  • CLI parsing extracted to src/cli.js and unit-tested (25 tests, lint clean).
  • Verified live: ran shotkit <starter-path> --scene 01-popup --no-video --json from an unrelated cwd — stdout parsed as JSON, RC=0; no-config path returns RC=2 with a JSON error.
  • v1.1.0; README/ko roadmap updated (MCP → Non-goals; npm publish pending note).

…pture skill

Makes shotkit first-class for shell-having coding agents WITHOUT an MCP server (per the surface-by-nature decision: shotkit is a heavy, file-producing build tool, so MCP is dropped from the roadmap → Non-goals).

- bin/shotkit.js: --json mode (stdout = exactly one {ok, outDir, produced[]} object; progress logs → stderr; build stdout → stderr), optional path positional (run against any checkout without cd), exit codes 0/1/2 (2 = usage/no config)
- src/cli.js: arg parsing + config resolution extracted from bin and unit-tested (25 tests total)
- src/capture.js: returns {produced, outDir}; build stdio routed by json mode
- skills/capture/SKILL.md: Claude Code skill wrapping the CLI (Agent Skills format; shipped in the npm tarball via files)
- AGENTS.md: 'Run this tool (for agents)' block (read by Claude Code/Codex/Cursor/Gemini CLI/...)
- README/README.ko: agent-contract docs; MCP row dropped with rationale; install honesty note (npm publish pending → github:#v1.1.0)
- package.json: v1.1.0; remove broken version:* script references; files += skills
@heznpc heznpc merged commit e8f2951 into main Jun 9, 2026
1 check passed
@heznpc heznpc deleted the feat/agent-contract branch June 9, 2026 20:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant