- Building the missing toolbelt for Claude Code: captain-hook for declarative hooks, cc-pool for account pooling, cc-review for reviewing Claude's diffs in a PR-style web UI, cc-transcript for typed transcripts, and slop-cop to catch AI-flavored prose
- Converging those pieces into one session-activity platform β typed events and a decision ledger in cc-transcript, with captain-hook as its hook runtime β and building cc-orchestrate into a pure-Go CLI that runs fleets of agents across pluggable backends like cmux, superset, tmux, and zellij, each with an AgentProber liveness check for long-lived, keep-alive sessions β with cc-vigil, a transcript-oracle sleep inhibitor, keeping the Mac awake only while those agents are truly working
- Hard-cutting the whole cc-* fleet onto shared substrate: daemonkit for daemon lifecycle β the five-phase hard cut has landed as v0.21: wire, trust, and proc carved into internal packages, durable/ and launchd made public behind one macOS-only root Serve/Client/Control surface, one schema generating the frame codec for both Go and Swift behind a drift gate, and subprocess supervision exposed from a single implementation to both a serving daemon and a CLI with no daemon, socket, or wire at all β with no byte now reaching a peer whose code identity hasn't been judged. captain-hook, cc-pool, cc-notes, cc-interact, fusekit, cookiesync, synckit, cc-orchestrate, cc-present, and cc-review have all since moved onto it, each stating a deadline budget at every choke point, and their releases are macOS-only now because v0.21 compiles nowhere else; the bundle digest three of them once hand-copied is finally callable. v0.22 has since taken the socket path out of a spawned child's argv entirely β the child inherits its session on fd 3, business-lane only and refused the drain preamble, so nothing same-UID can race the bind β and made a business failure cross the wire as a typed error, so
errors.Is(err, context.DeadlineExceeded)answers for the daemon's own deadline instead of the caller's; every daemon's private state moved out of~/<Label>and under~/.daemonkit/agents/<Label>, with fusekit first onto the release and cc-pool right behind it, its widget dropping the holder socket path the broker no longer dials β and binrun for distribution, with every release gated on a tag resolving to one exact commit on main - Running cc-sentiment, an open experiment in whether developer sentiment with Claude Code tracks the model, the tooling, or just the time of day
- Self-hosting yclaw, an always-on, reproducible Apple Silicon home server for the Nous hermes-agent β gVisor-sandboxed and tailnet-only, so the agent never touches your credentials
- Engineer & CEO at Aneta
Recent activity
2026-08-22Pushed to yasyf/homebrew-tap β published the ccx v0.42.0, cc-patch v0.15.0, and slop-cop v0.1.63 formulae2026-08-22Pushed to yasyf/cc-context β made ship restack a graphite stack itself, take --yolo, and derive its commit from the PR flags2026-08-21Pushed to yasyf/cc-review β cut v0.34.1 on cc-interact v0.32.1 and daemonkit v0.21.42026-08-21Pushed to yasyf/cc-orchestrate β cut 0.16.1, and made pty hosts Serve products under one daemonkit Daemon2026-08-21Pushed to yasyf/slop-cop β started no MCP servers for the analysis passes2026-08-21Pushed to yasyf/captain-hook β ran the hook shims and the host wrapper under bash, not sh2026-08-21Pushed to yasyf/cc-skills β ran the binrun shim under bash, and excluded .cursor-plugin from drift2026-08-21Pushed to yasyf/cc-patch β cut 0.15.0 with local packs and replace sites, dropping the tasktools builtin2026-08-21Was active in yasyf/cc-patch2026-08-21Worked on a pull request in yasyf/cc-patch2026-08-21Created something new in yasyf/cc-patch2026-08-20Worked on a pull request in yasyf/cc-context
19,841 contributions in the last year
- gpt-do β 211 β GPT-powered bash commands.
Python - summ β 152 β GPT-based Conversation Summarizer
Python - compress-gpt β 217 β Self-extracting GPT prompts for ~70% token savings
Python - anthropic-computer-use-modal β 49 β Anthropic Computer Use with Modal Sandboxes
Python - shamer β 37 β Code Coverage Gamified
Python
Claude Code, continued
- cc-skills β the plugin marketplace where the whole toolbelt ships
- cc-guides β srcβartifact doc rendering with embedded canonical fragments, keeping every repo's CLAUDE.md and AGENTS.md in sync
- cc-notes β a notes-and-tasks layer agents can actually use, now with a derived knowledge graph over everything they've recorded
- cc-runtime β a runtime that hands Claude Code its harness-injected tools, AskUserQuestion and friends
- cc-interact β the human-in-the-loop agent/daemon/web framework, pulled out of cc-review
- cc-present β ad-hoc live web artifacts for a session: approval boards and choices whose every click streams back to the agent
- cc-factory β a software factory where orchestrated agents plan, build, review, and ship
- cc-steer β learns how you steer Claude from past sessions, then does the steering for you
- cc-pane β one pane of glass over Claude Code and the whole cc-* toolbelt
- cc-sudo β sudo for Claude Code: one Touch ID tap per privileged command
- cc-patch β fast mode for Claude Code's delegated agents, re-applied automatically on every spawn
Taming long sessions
- cc-merge β a merge queue for the git worktrees where finished Claude outputs land
- cc-context β ccx, token-bounded codebase context for agents, whose
shipnow submits and restacks a whole graphite stack on its own - cc-squash β augmented auto-compaction for marathon Claude Code sessions
- cc-vigil β a transcript-oracle sleep inhibitor that keeps your Mac awake only while Claude agents are truly working
Claude Code, off the clock
- getaway β plan award trips from Claude Code: sweeps seats.aero across 28 mileage programs and composes whole journeys, flights out and home plus hotel award nights via rooms.aero
- dailies β stop being your own cron job
Systems & libraries
- authkit β a signed macOS helper for Touch ID consent and Secure Enclave attestation, replacing the old cookiesync keyhelper
- fusekit β detached FUSE-T mount-holder and mount-lifecycle primitives for Go, now under cc-pool and cc-notes
- daemonkit β the durable daemon-lifecycle runtime the cc-* control planes now ride: detached spawns, codesign trust, and drain-on-upgrade
- binrun β fetch, verify, and exec the exact artifact a descriptor pins: release binaries, Python tools, signed apps β the shim the cc-* tools now ship behind
- semisweet β an async, in-memory semantic cache with pluggable backends
- experiment-at-home β the plumbing every local AI experiment rebuilds, built once: modal, mlx-lm, and tinker backends behind one registry
- spawnllm β call an LLM from any subshell: Claude, Codex, a local MLX model, or Apple's on-device Foundation Models
- pocket-llm β on-device LLM sessions for any browser: Chrome's Prompt API, WebLLM, or wllama, picked by feature detection, smallest model first
Cross-host sync
- synckit β the shared substrate the tools below build on: host mesh, a convergent registry, unix-socket RPC, and synckitd, the daemon they now ride
- reposync β your other machine already pulled: git checkouts kept in step across every host you work from
- cookiesync β your other Mac already did the 2FA: browser sessions moved between your own machines, consent gated behind Touch ID via authkit
Python, with fewer footguns
- python-defer β Go-style
deferin Python, no decorators required - python-secret-type β a rune-style
secrettype so credentials can't leak by accident - docker-dsl β write multi-stage Dockerfiles as Python context managers
- bcferries β the Python client for BC Ferries schedules; proudly Canadian π¨π¦
Earlier eras
- safemodels β cryptographic provenance proofs for model weights, before that was cool
- vc β the voting platform Dorm Room Fund used to pick its investments
- hifromtheotherside β fighting the echo chamber, one cross-aisle match at a time
- controlio β control your computer over SMS, 2014 edition
2026-08-22cc-context v0.42.0 β shipped self-restacking graphite stacks, a --yolo flag, and a commit derived from the PR flags2026-08-20slop-cop v0.1.63 β adopted the Google developer documentation style guide as a third rule layer2026-08-19captain-hook v12.21.6 β gave the worktree test a git identity, since CI runners carry none2026-08-17cc-pool v0.66.0 β took daemonkit v0.22.0 and fusekit v1.17.0, and dropped the holder socket path2026-08-16cc-skills v1.10.0 β moved the codex lane onto daemonkit v0.21.4 and a stable daemon path2026-08-04cc-notes v0.51.1 β stated a deadline budget at every daemonkit entry point2026-07-27spawnllm v0.11.0 β added an Apple Foundation Models on-device backend and exact-model passthrough
Language breakdown
Go ββββββββββββββββββββ 35%
Python ββββββββββββββββββββ 35%
Ruby ββββββββββββββββββββ 10%
Rust ββββββββββββββββββββ 6%
Swift ββββββββββββββββββββ 6%
TypeScript ββββββββββββββββββββ 6%
Latest from Yasyf's Random Musings:
- Improving Claude Computer Use
- On Securing Model Supply Chains
- python π€
defer - Haystack + Pinecone Hybrid Vectors
- CompressGPT: Decrease Token Usage by ~70%
Automate the boring parts, then automate the automation.






