agentleFS
ryanmacleanryanmaclean/skills/gastown-sling/SKILL.md

gastown-sling

Skill1 starsChanged 50 days agoMITView on GitHub

Use when dispatching tasks to gastown polecats — submitting beads, checking status, choosing runtimes, or understanding the coordinator-worker architecture.

  • Sends data out

The file

We split this skill into the rules it gives an agent

1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Default: claude (or stub if baseline mode off).

    line 41

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Gastown Sling — Dispatching Tasks to Polecats

Architecture

Polecats run on the coordinator (i9-zfs-pop:4000), not on Pi workers. Pi workers with GASTOWN_ROLE=polecat_worker are BEAM federation nodes that suppress coordinator-only services (rate limiter). They don't receive polecats.

active polecats in /api/health = tasks currently running on coordinator. 0 = idle (normal).

Sling API

# Submit and immediately dispatch
curl -s -X POST http://10.0.2.230:4000/api/sling \
  -H 'Content-Type: application/json' \
  -d '{"description": "task prompt here", "runtime": "claude"}'
# → {"ok":true, "bead_id":"gt-xxxxx", "runtime":"claude"}

# Check bead status
curl -s http://10.0.2.230:4000/api/sling/gt-xxxxx

# List all beads
curl -s -H 'Authorization: Bearer $GASTOWN_API_TOKEN' http://10.0.2.230:4000/api/beads

Available Runtimes

RuntimeWhat it runsNotes
claudeclaude -p <prompt>Claude Code CLI, non-interactive
codexcodex exec --full-autoCodex CLI, sandboxed
ollamaollama run qwen3-coder:480b-cloudLocal Ollama HTTP
ollama_kimikimi-k2.5:cloud at 10.0.2.42pop4090 Ollama
stubechoTesting only, instant

Default: claude (or stub if baseline mode off).

Writing Good Bead Descriptions

The description is the full prompt sent to the runtime. Be specific:

# Good — self-contained, actionable
curl -X POST http://10.0.2.230:4000/api/sling \
  -H 'Content-Type: application/json' \
  -d '{
    "description": "Clone all public repos from github.com/ryanmaclean to Gitea at http://10.0.2.230:3001. Use the Gitea API at /api/v1/repos/migrate. Token in GITEA_TOKEN env var. Work in /tmp/sync-$(date +%s). Log progress. When done, list all synced repos.",
    "runtime": "claude"
  }'

Mix Task (local only)

# On i9, inside elixir-gastown dir
mix gastown.sling BEAD_ID --runtime claude

Bead States

open → in_progress → done | failed | abandoned

Common Mistakes

MistakeFix
Expecting Pi workers to run polecatsPolecats run on coordinator only
"0 polecats" = broken0 = idle, submit a bead to see count go up
Short descriptionsThe description IS the prompt — be detailed
Wrong Ollama host for kimiUse ollama_kimi runtime, not ollama

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.