Audit the grove_api repo for changes since the last skill update, then generate a plan to sync agent skills — covering missing features, breaking changes, deprecated endpoints, and new skill opportunities.
Systematically compare the Grove API source code against the current agent skills to find gaps, then produce an actionable update plan.
| Input | Default | Description |
|---|---|---|
| Skills repo | /Users/olshansky/workspace/grove/agent-skills | The agent-skills repo with skills/grove/ |
| API repo | /Users/olshansky/workspace/grove/grove_api | The Grove API source code |
| Since date | Last commit date in skills repo | How far back to look for API changes |
cd /Users/olshansky/workspace/grove/agent-skills
git log -1 --format="%ci" -- skills/grove/
head -15 skills/grove/SKILL.md
ls skills/grove/*.md
## Scope or first section to understand what's already documented.cd /Users/olshansky/workspace/grove/grove_api
git log --oneline --since="<baseline-date>" -- .
# FastAPI routes
rg "(@app\.|@router\.)" --type py -l
rg "(@app\.|@router\.)(get|post|put|patch|delete)" --type py -C 2
rg "class \w+\(.*BaseModel\)" --type py
# Removed or renamed endpoints
git diff <baseline-commit>..HEAD --stat -- "*.py" | head -30
# Deleted files
git diff <baseline-commit>..HEAD --diff-filter=D --name-only
# Changed request/response schemas
git log --oneline --since="<baseline-date>" --grep="breaking\|remove\|deprecat\|rename" --all
git log --oneline --since="<baseline-date>" --grep="feat\|feature\|add\|new" --all
# API routes
git diff <baseline-commit>..HEAD --stat -- app/api/ app/routes/ routes/
# Models/schemas
git diff <baseline-commit>..HEAD --stat -- app/models/ app/schemas/
# Core services
git diff <baseline-commit>..HEAD --stat -- app/services/ app/core/
For each API capability found in Phase 2, check if it's covered in the skills:
| Endpoint pattern | Expected skill module |
|---|---|
/v1/tip/* | tip.md, message.md |
/v1/account/* | register.md, earn.md, onboard.md |
/v1/feed/* | feed.md |
/v1/find/*, /v1/check/* | find.md |
/v1/wallet/*, /v1/setup/* | onboard.md |
/v1/account/webhook/* | register.md (stream alerts) |
/v1/account/profile | register.md, earn.md |
grove --help 2>/dev/null
grove tip --help 2>/dev/null
grove find --help 2>/dev/null
For features without CLI support, note that curl API fallbacks are needed using:
GROVE_API_KEY=$(grep GROVE_API_KEY ~/.grove/.env | cut -d= -f2)
curl -s -X <METHOD> "https://api.grove.city/v1/<path>" \
-H "Authorization: Bearer $GROVE_API_KEY" \
-H "Content-Type: application/json" \
-d '<body>'
Generate a structured plan saved to:
plans/grove-skills-update_<YYYY>_<MM>_<DD>.md
The plan must include:
For each new module:
skills/grove/<name>.mdFor each existing module that needs changes:
skills/grove/<name>.mdFor each skill or section to remove:
skills/grove/<name>.mdOrdered list of changes with dependencies noted.
make test # Validate frontmatter
make link-skills # Update symlinks
# Test commands against live API
# Verify cross-references
If the user approves the plan, execute it:
SKILL.md (version, modules, triggers)make testmake link-skillsAsk for confirmation before executing. Present the plan first and wait for approval.
End the audit with a summary table:
| Module | Action | Reason |
|--------|--------|--------|
| message.md | CREATE | Tip to Talk API |
| feed.md | CREATE | Creator Feed API |
| register.md | UPDATE | Facebook, Instagram, stream alerts |
| tip.md | UPDATE | Tip-with-message reference |
| ... | ... | ... |
git log in the API repo first — commit messages are the fastest signal