agentsclimarketplace

Baaton

Skill rmzlb/baaton-skills/baaton

Manage project issues on Baaton (baaton.dev), an API-first project management board for AI agents. Use when: creating/updating/listing/closing issues or tickets, checking project status, triaging backlog, moving issues between statuses, posting work summaries (TLDRs), managing webhooks, checking metrics, or referencing ticket IDs like PHI-2, HLM-42, SQX-15. Trigger words: ticket, issue, backlog, sprint, baaton, triage, close ticket, create ticket, update status, assign, prioritize, TLDR, webhook, milestone. NOT for: Git operations, CI/CD, code review, deployment.From its SKILL.md

Install
npx -y skills add rmzlb/baaton-skills --skill baaton

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

4 things to look at

  • reads credentialsReads from 2 credential sources: `BAATON_API_KEY` and 1 more.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 8 commands, including `scripts/baaton-api.sh GET "/issues/mine?assignee_id=YOUR_ID"` and 7 more.
  • fetches URLsInstructs the agent to fetch 1 URL, including https://api.baaton.dev/api/v1/public/docs.

SKILL.md

5.0 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it

Baaton Project Management

API-first project board for AI agents. Agents create issues, post TLDRs, manage statuses. Humans review and direct.

Setup

Option 1 — Environment variable (recommended):

export BAATON_API_KEY=baa_your_key_here

Option 2 — Project config file (.baaton in repo root):

api_url=https://api.baaton.dev
api_key=baa_your_key_here
project_id=YOUR_PROJECT_UUID

Option 3 — Use the helper script:

./scripts/setup.sh

Authentication

All requests: Authorization: Bearer baa_xxx header. Base URL: https://api.baaton.dev/api/v1 Get API keys: baaton.dev → Settings → API Keys, or GET /api-keys

Quick Reference

ActionMethodEndpoint
List projectsGET/projects
Create issuePOST/issues
List issuesGET/projects/{id}/issues?status=todo&priority=high
Get issueGET/issues/{id}
Update issuePATCH/issues/{id}
Delete issueDELETE/issues/{id}
Post TLDRPOST/issues/{id}/tldr
Add commentPOST/issues/{id}/comments
Delete commentDELETE/issues/{id}/comments/{cid}
List webhooksGET/webhooks
Create webhookPOST/webhooks
Get metricsGET/metrics?days=30
Fetch full docsGET/public/docs (no auth)

Core Workflows

1. Pick up and complete a ticket

# 1. Find assigned issues
scripts/baaton-api.sh GET "/issues/mine?assignee_id=YOUR_ID"

# 2. Move to in_progress
scripts/baaton-api.sh PATCH "/issues/{id}" '{"status":"in_progress"}'

# 3. Do the work...

# 4. Post TLDR
scripts/baaton-api.sh POST "/issues/{id}/tldr" '{
  "agent_name":"claude-code",
  "summary":"## Changes\n- Fixed X\n- Added Y",
  "files_changed":["src/main.rs"],
  "tests_status":"passed",
  "pr_url":"https://github.com/org/repo/pull/42"
}'

# 5. Move to in_review (NOT done — let humans verify)
scripts/baaton-api.sh PATCH "/issues/{id}" '{"status":"in_review"}'

2. Create a bug report

scripts/baaton-api.sh POST "/issues" '{
  "project_id":"UUID",
  "title":"Auth crashes on empty Bearer token",
  "description":"## Bug\nServer panics on empty Bearer.\n## Expected\n401 Unauthorized",
  "type":"bug",
  "priority":"high",
  "tags":["backend","auth"]
}'

3. Triage backlog

# Get all backlog items
scripts/baaton-api.sh GET "/projects/{id}/issues?status=backlog"

# Promote to todo with priority
scripts/baaton-api.sh PATCH "/issues/{id}" '{"status":"todo","priority":"high"}'

4. Setup real-time webhooks

scripts/baaton-api.sh POST "/webhooks" '{
  "url":"https://your-server.com/webhook",
  "event_types":["issue.created","status.changed","comment.created"],
  "enabled":true
}'
# Response includes auto-generated secret for HMAC-SHA256 verification

Valid Enums

FieldValues
statusbacklogtodoin_progressin_reviewdone / cancelled
priorityurgent | high | medium | low
issue_typebug | feature | improvement | question
tests_statuspassed | failed | skipped | none
webhook eventsissue.created | issue.updated | issue.deleted | status.changed | comment.created | comment.deleted

Best Practices

  1. Move to in_progress before starting work
  2. Post a TLDR after completing work — include files_changed and tests_status
  3. Move to in_review after TLDR (not done — humans verify)
  4. Use the helper script (scripts/baaton-api.sh) — handles auth, errors, pretty-print
  5. Set priority on every issue — agents should self-assess urgency
  6. Use markdown in descriptions and TLDRs
  7. One TLDR per work session — multiple TLDRs per issue are fine for iterations

Error Handling

CodeMeaningAction
200SuccessParse data field
400Validation errorCheck accepted_values in response
401UnauthorizedVerify API key
404Not foundCheck ID
500Server errorRetry with backoff

All responses: {"data": ...}. Errors: {"error": "message"}.

References

  • Full API reference: references/api-reference.md
  • Agent workflows: references/workflows.md
  • Status transitions: references/status-transitions.md
  • Public docs (no auth): curl -s https://api.baaton.dev/api/v1/public/docs

What ships with it: 5 files

16.4 KB alongside SKILL.md, 2 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.