|
| 1 | +# Agent skills — ponytail + caveman |
| 2 | + |
| 3 | +How [ponytail](https://github.com/DietrichGebert/ponytail) and [caveman](https://github.com/JuliusBrussee/caveman) integrate with this platform. |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## Why both |
| 8 | + |
| 9 | +| Skill | Shrinks | Where it applies | |
| 10 | +|-------|---------|------------------| |
| 11 | +| **Ponytail** | What agents **build** | Edit prompts, code diffs, guardrailed file writes | |
| 12 | +| **Caveman** | What agents **say** | Plan step strings, observations, chat-style output | |
| 13 | + |
| 14 | +They compose: ponytail picks `<input type="date">` over a date-picker library; caveman writes "Use native date input" instead of a paragraph. |
| 15 | + |
| 16 | +--- |
| 17 | + |
| 18 | +## Cursor (local development) |
| 19 | + |
| 20 | +| File | Purpose | |
| 21 | +|------|---------| |
| 22 | +| `.cursor/rules/ponytail.mdc` | Always-on YAGNI ladder | |
| 23 | +| `.cursor/rules/caveman.mdc` | Optional terse prose mode | |
| 24 | + |
| 25 | +Install / refresh: |
| 26 | + |
| 27 | +```bash |
| 28 | +chmod +x scripts/install-agent-skills.sh |
| 29 | +./scripts/install-agent-skills.sh |
| 30 | +``` |
| 31 | + |
| 32 | +Optional full caveman skill via skills CLI (installs to gitignored `.cursor/skills/`): |
| 33 | + |
| 34 | +```bash |
| 35 | +npx skills add JuliusBrussee/caveman -a cursor --yes |
| 36 | +``` |
| 37 | + |
| 38 | +--- |
| 39 | + |
| 40 | +## Temporal workers (autonomous agents) |
| 41 | + |
| 42 | +Prompt injection lives in `temporal/config/agent_skills.py` and is appended to: |
| 43 | + |
| 44 | +- **Plan nodes** — `DRAFT_PLAN_SYSTEM_PROMPT`, `REFINE_PLAN_SYSTEM_PROMPT` (caveman) |
| 45 | +- **Edit node** — `EDIT_SYSTEM_PROMPT` (ponytail) |
| 46 | +- **Observations** — compact memory writes (caveman hint) |
| 47 | + |
| 48 | +Environment toggles on the worker: |
| 49 | + |
| 50 | +```bash |
| 51 | +export AGENT_PONYTAIL=full # default |
| 52 | +export AGENT_CAVEMAN=lite # default |
| 53 | +export AGENT_PONYTAIL=off # disable ponytail ladder |
| 54 | +export AGENT_CAVEMAN=off # disable terse plans |
| 55 | +``` |
| 56 | + |
| 57 | +--- |
| 58 | + |
| 59 | +## Multi-agent orchestration (planned) |
| 60 | + |
| 61 | +When `MissionWorkflow` lands, assign skills by role: |
| 62 | + |
| 63 | +```text |
| 64 | +MissionWorkflow |
| 65 | + ├── planner task → caveman (board + task titles) |
| 66 | + ├── builder tasks → ponytail (minimal edits per task) |
| 67 | + └── reviewer task → ponytail-review pattern (delete-list) |
| 68 | +``` |
| 69 | + |
| 70 | +Shared **Postgres mission board** holds progress; shared RAG holds observations tagged by mission/task. Target graph design: [multi-agent.md](./multi-agent.md). |
| 71 | + |
| 72 | +--- |
| 73 | + |
| 74 | +## Third-party layout |
| 75 | + |
| 76 | +See [third_party/README.md](../third_party/README.md). |
| 77 | + |
| 78 | +- `third_party/ponytail/` — optional git submodule (full upstream) |
| 79 | +- `third_party/caveman-skill/SKILL.md` — MIT skill text only |
| 80 | + |
| 81 | +**Not included:** Caveman Proxy / Engine (BSL-1.1). Install separately if you want input-token compression: |
| 82 | + |
| 83 | +```bash |
| 84 | +npm install -g @caveman-ai/cli && caveman setup --install |
| 85 | +``` |
| 86 | + |
| 87 | +--- |
| 88 | + |
| 89 | +## License |
| 90 | + |
| 91 | +- Ponytail: MIT |
| 92 | +- Caveman skill: MIT |
| 93 | +- Caveman engine/proxy: BSL-1.1 — not vendored in this repo |
0 commit comments