Skip to content

feat: ship the programa agent skill (SKILL.md + installer wiring) - #173

Merged
arzafran merged 2 commits into
mainfrom
feat/165-agent-skill
Jul 21, 2026
Merged

feat: ship the programa agent skill (SKILL.md + installer wiring)#173
arzafran merged 2 commits into
mainfrom
feat/165-agent-skill

Conversation

@arzafran

Copy link
Copy Markdown
Member

What this does

Agents running inside programa now get taught how to drive the app. SKILL.md (repo root) covers: env guard first (stop if not inside programa), inspecting surroundings, splitting/running without focus theft, reading sibling panes, spawning a helper agent, and waiting — including the freshly-landed wait-surface.

Install flows drop the skill where each tool discovers it:

  • programa claude install-integration~/.claude/skills/programa/SKILL.md
  • programa codex install-hooks~/.agents/skills/programa/SKILL.md
  • programa opencode install-integration~/.config/opencode/skills/programa/SKILL.md

All three use the existing diff-preview-then-confirm flow; uninstall refuses to delete unmanaged files (marker check).

Test plan

  • programa + programa-cli schemes build
  • Live-tested Claude + OpenCode install/idempotency/uninstall/marker-refusal against scratch config dirs; installed file byte-identical to repo SKILL.md
  • Manual: fresh Claude session inside programa, "open a split and tail the dev server log" → does it via CLI without focus theft

Fixes #165

arzafran added 2 commits July 21, 2026 16:46
Teaches agents running inside programa (Claude Code, Codex, OpenCode) that
they can drive the app itself via the socket-backed CLI: inspect the
window/workspace/pane/surface tree, split panes and run commands without
stealing the user's focus, read a sibling pane's output, spawn and
coordinate a helper agent, and wait on it (poll or wait-for; a first-class
wait primitive is tracked separately in #166 and isn't shipped yet).

SKILL.md lives at the repo root, with a longer walkthrough at
docs/agent-skill.md and a README pointer. The existing Claude/Codex/OpenCode
install flows now drop it into each tool's standard skill location alongside
their existing hooks/plugin file, using the same diff-then-confirm pattern
already used for those:
- Claude Code: ~/.claude/skills/programa/SKILL.md ($CLAUDE_CONFIG_DIR override)
- Codex: ~/.agents/skills/programa/SKILL.md (the shared cross-tool convention)
- OpenCode: ~/.config/opencode/skills/programa/SKILL.md ($OPENCODE_CONFIG_DIR override)

OpenCode also discovers skills from ~/.claude/skills and ~/.agents/skills
globally, so any one of the three installers already covers it for most
setups.

Refs #165
@arzafran
arzafran merged commit 09da4b9 into main Jul 21, 2026
3 checks passed
@arzafran
arzafran deleted the feat/165-agent-skill branch July 21, 2026 19:50
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.

Ship a programa agent skill: packaged instructions so agents can drive the app

1 participant