ralphctl: Agent for Claude Code

.claude/agents/implementer.md

implementer is an agent for Claude Code from lukas-grigis/ralphctl. It costs 56 tokens per session (1,149 once invoked), scanned A, original, MIT.

A TypeScript implementation agent for ralphctl, a command-line developer tool. It writes and changes code according to the project’s architecture and existing patterns.

In plain words
What is it for?
Use it to implement features, fix bugs, refactor TypeScript, and add tests while following ralphctl’s module boundaries and coding conventions.
Why use it?
It gives feature work and bug fixes a consistent approach, reducing accidental complexity and changes that do not fit the project’s design.

Agent for Claude Code

Written for Claude Code: installed under .claude/. Also seen: model in frontmatter; mentions CLAUDE.md; mentions Claude Code.

This is lukas-grigis/ralphctl's own configuration. It tells Claude Code how to work on ralphctl itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything ralphctl configures →

Reuse

Borrowing it

Nothing to install: this file belongs to lukas-grigis/ralphctl. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/lukas-grigis/ralphctl/main/.claude/agents/implementer.md
Clone the repo
git clone --depth 1 https://github.com/lukas-grigis/ralphctl

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for implementer

README.md
[![agentmods](https://agentmods.dev/badge/agents/lukas-grigis/ralphctl/implementer/github.svg)](https://agentmods.dev/agents/lukas-grigis/ralphctl/implementer)
Your own site
<a href="https://agentmods.dev/agents/lukas-grigis/ralphctl/implementer"><img src="https://agentmods.dev/badge/agents/lukas-grigis/ralphctl/implementer/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for implementer

Your own site · 80×15
<a href="https://agentmods.dev/agents/lukas-grigis/ralphctl/implementer"><img src="https://agentmods.dev/badge/agents/lukas-grigis/ralphctl/implementer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 56 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,149 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00056 $0.01149
Opus 5.5 $0.00022 $0.00460
Sonnet 5.5 $0.00011 $0.00230
Haiku 4.5 $0.00006 $0.00115

Measured 1mo ago against content hash 22a606118a10, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

implementer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/agents/implementer.md · 81 lines

How it starts

The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You write production TypeScript for ralphctl as a Claude Code build agent — you work on the ralphctl repo, you are not part of its runtime. CLAUDE.md is already in your context and ESLint fences most of its rules, so this file only adds what neither carries.

Scope

  • You own src/** except src/application/ui/** (designer) and src/integration/ai/prompts/** (prompt-template-engineer), plus the tests that cover your own change. src/integration/ai/contract/** signal schemas and every other _engine/ outside prompts/ are yours.
  • Edit only the files the task names or clearly requires. When a change needs a view or prompt edit too, finish your part and name the follow-up in your report rather than crossing the line — the parent delegates it.
  • When the spec is missing, ambiguous, or conflicts with CLAUDE.md or the layering, stop and return the question. A guessed contract costs more to unwind than a round-trip.

Git

Other agents and the maintainer share this working tree, and a live pnpm dev sprint may be committing in it. git stash, reset, checkout, restore, clean and switch have destroyed uncommitted work here before, so don't run them. Read-only git (status, diff, log, show) is fine. The git-free alternatives: to see a test fail before the fix, write the test first and run it before touching the source; to look at an old version, git show <rev>:<path> into the scratchpad. Commit only when the delegation asks for it, and then stage by explicit path, never git add -A or ..

Worktree isolation is opt-in per invocation — only use it when the delegation says so.

How to work

  • Read your MEMORY.md first; the seams_* files record trade-offs no doc carries (for example, which predicate must not be loosened to make a test pass).
  • Before structural harness work — a chain primitive, a new flow, the evaluator, or providers/_engine/ — invoke the harness-principles skill. For provider spawn, watchdog, rate-limit or resume work, invoke claude-integration.
  • Copy the nearest live precedent (a neighbouring use case, leaf, flow or adapter) instead of inventing a shape. Dormant but finished code is usually meant to be wired up by mirroring a live precedent, not deleted — ask if unsure.
  • Fence the wiring, not just the function. A unit test that injects the dependency stays green while wire() or the flow factory never constructs it; add at least one test through the real construction site.
  • Every bug fix gets a regression test that you have seen fail against the unfixed code.
  • Fix root causes. Leaks, OOMs and runaway loops are first-class bugs; a timeout or cap is a fallback you name in the report, not the fix.
  • Changing a flow's element list means updating tests/unit/application/flows/<flow>/flow-shape.test.ts and tests/e2e/flows/<flow>.test.ts in the same change, and flagging the doc traces for the flow-trace-sync skill.
  • On-disk data migrations must be safe to re-run and to interrupt: stamp the data version, keep readers tolerant of the old shape, back up data/ first, and never touch config/.
  • Keep business/ pure: a use case that needs I/O gets a port, not a node:fs import.

Read the full file on GitHub · 81 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago Changed · -110 lines · -31 tokens per session 22a606118a10
  2. 2mo ago First seen · 191 lines · 87 tokens per session scan A fdc13bbde88b

Subscribe to this mod's changes

implementer is an agent published in the GitHub repository lukas-grigis/ralphctl (24 stars, last pushed 4d ago), licensed MIT. It adds 56 tokens to every session and 1,149 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

implementer compared with agents from other repositories

implementer next to 6 agents from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
implementerlukas-grigis/ralphctlAgent244d agoMITA56Claude Code
customchihebnabil/lovable-boilerplateAgent662d agoMITA38GitHub Copilot
playwright-automation-engineer-ts-detailedjaktestowac/awesome-copilot-for-testersAgent1192mo agoMITA54Claude Code
typescript-developersampleXbro/agentsmeshAgent27yesterdayMITA45Claude Code
typescript-reviewerKevinZai/commanderAgent6yesterdayMITA47Claude Code
backend-developerFortiumPartners/ensembleAgent12yesterdayMITA18Claude Code
typescript-reviewerDmitriyYukhanov/claude-pluginsAgent826d agoMITA35Claude Code