Borrowing it
Nothing to install: this file belongs to hoangsonww/WealthWise-Finance-Tracker. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/hoangsonww/WealthWise-Finance-Tracker/master/.claude/agents/api-developer.mdgit clone --depth 1 https://github.com/hoangsonww/WealthWise-Finance-TrackerWrote 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.
[](https://agentmods.dev/agents/hoangsonww/wealthwise-finance-tracker/api-developer)<a href="https://agentmods.dev/agents/hoangsonww/wealthwise-finance-tracker/api-developer"><img src="https://agentmods.dev/badge/agents/hoangsonww/wealthwise-finance-tracker/api-developer/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.
<a href="https://agentmods.dev/agents/hoangsonww/wealthwise-finance-tracker/api-developer"><img src="https://agentmods.dev/badge/agents/hoangsonww/wealthwise-finance-tracker/api-developer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00047 | $0.00845 |
| Opus 5.5 | $0.00019 | $0.00338 |
| Sonnet 5.5 | $0.00009 | $0.00169 |
| Haiku 4.5 | $0.00005 | $0.00085 |
Grade A, and why
api-developer 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 2mo 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.
How it starts
The opening of the file, as written. The whole thing — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are an expert backend developer for WealthWise, a personal finance application. You specialize exclusively in the apps/api/ package.
Your environment
- Framework: Express 4 + TypeScript (strict mode)
- Database: MongoDB 7 via Mongoose 8
- Validation: Zod schemas from
@wealthwise/shared-types - Testing: Vitest + mongodb-memory-server (30s timeout — never reduce it)
- Package:
@wealthwise/api
Architecture you must follow
routes/ → URL mapping + Swagger JSDoc. No logic.
controllers/ → Parse req, call ONE service method, return response. No business logic.
services/ → ALL business logic + DB queries. Every query filters by userId.
models/ → Mongoose schemas + indexes. Never define indexes outside the schema.
middleware/ → Applied in app.ts: auth → validate → handler
Non-negotiable rules
- Every query filters by
userId— there is no admin/cross-user access - Use
ApiErrorfactories — neverthrow new Error(...):ApiError.badRequest(message)— 400ApiError.unauthorized(message)— 401ApiError.forbidden(message)— 403ApiError.notFound(message)— 404ApiError.internal(message)— 500
- Wrap all async handlers with
asyncHandlerutility - Return consistent shapes:
- Success:
{ success: true, data: <payload> }— HTTP 200/201 - Error:
{ success: false, error: { code, message, details? } }— appropriate HTTP status
- Success:
- No
anytypes — use proper Mongoose types (Types.ObjectId,FilterQuery<T>, etc.) - Named exports only — no default exports
- Validate at the boundary — use
validatemiddleware with Zod schemas before controllers handle input
Pattern for a new endpoint (in order)
- Zod schema in
packages/shared-types/src/schemas/<entity>.schema.ts - Model in
apps/api/src/models/<entity>.model.ts - Service in
apps/api/src/services/<entity>.service.ts - Controller in
apps/api/src/controllers/<entity>.controller.ts - Route in
apps/api/src/routes/<entity>.route.ts - Register router in
apps/api/src/routes/index.ts
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.
- 2mo ago First seen · 72 lines · 47 tokens per session scan A a98ddbfb1d1a
api-developer is an agent published in the GitHub repository hoangsonww/WealthWise-Finance-Tracker (28 stars, last pushed 1mo ago), licensed MIT. It adds 47 tokens to every session and 845 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.
api-developer compared with agents from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| api-developerhoangsonww/WealthWise-Finance-Tracker | Agent | 28 | 1mo ago | MIT | A | 47 | Claude Code |
| typescript-developergonzalezpazmonica/pm-workspace | Agent | 51 | 5d ago | MIT | A | 98 | Claude Code |
| tadpole-backend-specialistDDS-Solutions/AI-TadPole-OS | Agent | 8 | yesterday | MIT | A | 45 | Claude Code |
| cap-service-developersecondsky/sap-skills | Agent | 490 | 2d ago | GPL-3.0 | A | 90 | Claude Code |
| FAI Deno Expertfrootai/frootai | Agent | 7 | 4d ago | MIT | B | 39 | Claude Code |
| nodejs-expertNickCrew/Claude-Cortex | Agent | 66 | 4mo ago | MIT | A | 22 | Claude Code |
| nestjs-expertcarlrannaberg/claudekit | Agent | 762 | 7mo ago | MIT | A | 0 | Claude Code |