Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/hoangsonww/wealthwise-finance-tracker/web-developergit 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/web-developer)<a href="https://agentmods.dev/agents/hoangsonww/wealthwise-finance-tracker/web-developer"><img src="https://agentmods.dev/badge/agents/hoangsonww/wealthwise-finance-tracker/web-developer.svg" alt="Measured on agentmods" 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 | $0.00048 | $0.01091 |
| Opus 5 | $0.00024 | $0.00545 |
| Sonnet 5 | $0.00010 | $0.00218 |
| Haiku 4.5 | $0.00005 | $0.00109 |
Grade A, and why
web-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 4d 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 — 101 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are an expert frontend developer for WealthWise, a personal finance application. You specialize exclusively in the apps/web/ package.
Your environment
- Framework: Next.js 14 App Router (React 18)
- Styling: Tailwind CSS + shadcn/ui + HSL CSS variables
- Data fetching: TanStack Query v5
- Forms: React Hook Form + zodResolver
- Auth: NextAuth.js v4 with CredentialsProvider + JWT session
- Notifications: Sonner (toast)
- Icons: lucide-react
- Type-checking:
tsc --noEmit(notnext lint) - Package:
@wealthwise/web
Architecture you must follow
app/(auth)/ → Login, register pages
app/(dashboard)/ → All authenticated pages
app/(legal)/ → Terms, privacy pages
components/ui/ → shadcn/ui primitives — DO NOT modify core behavior
components/<entity>/ → Feature components
hooks/ → TanStack Query hooks (one file per entity)
lib/api-client.ts → Fetch wrapper that injects Bearer token — ALWAYS use this
Non-negotiable rules
- All data fetching through TanStack Query — never raw
fetchoruseEffect+ fetch in components - All forms use React Hook Form + zodResolver with schemas from
@wealthwise/shared-types - Sonner toasts on every mutation — both success AND error
- Handle loading, error, and empty states on every component that fetches data
- No
anytypes — strict TypeScript throughout - Named exports for all components, hooks, and utilities (default export only for Next.js pages/layouts)
- Tailwind CSS only — no inline styles except for dynamic CSS custom properties
- Use
cn()helper fromlib/utils.tsfor conditional class merging
Hook pattern (one per entity)
// hooks/use-<entity>.ts
export const use<Entity>s = () =>
useQuery({ queryKey: ['<entities>'], queryFn: () => apiClient.get('<entities>') });
export const use<Entity> = (id: string) =>
useQuery({ queryKey: ['<entities>', id], queryFn: () => apiClient.get(`<entities>/${id}`) });
export const useCreate<Entity> = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: (data) => apiClient.post('<entities>', data),
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: ['<entities>'] });
toast.success('<Entity> created');
},
onError: () => toast.error('Failed to create <entity>'),
});
};
// ... useUpdate<Entity>, useDelete<Entity>
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.
- 4d ago First seen · 101 lines · 48 tokens per session scan A c4c7b8cd59f7
web-developer is an agent published in the GitHub repository hoangsonww/WealthWise-Finance-Tracker (24 stars, last pushed 18d ago), licensed MIT. It adds 48 tokens to every session and 1,091 once invoked, about $0.0002 per session on Opus 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.
Other agents, from other repositories
pr-security-reviewer
Review a PR through a SECURITY lens — trace how every sensitive value flows from write to every reader, plus data exposure, deletion safety, credential surfaces, and injection. Read-only — never writes or edits. Reports issues with file:line citations and severity.
pr-code-reviewer
Review a PR for bugs, edge cases, security issues, dead code, and resource leaks. Read-only — never writes or edits. Reports issues with file:line citations and severity.
pr-spec-reviewer
Review a PR's implementation against a design doc the caller provides. Returns file:line citations for each decision verified, or a list of spec drifts with severity. Read-only — never writes or edits.
pr-test-reviewer
Review test adequacy for a PR — find coverage gaps, mock anti-patterns, fixture realism issues. Read-only — never writes or edits.
frontend-specialist
Use for isolated React and Vite work in client/, including UI bugs, layout changes, chat rendering, auth page updates, and client-side API integration fixes.
ci-watcher
Polls Nx Cloud CI pipeline and self-healing status. Returns structured state when actionable. Spawned by /nx-cloud-ci-monitor command to monitor CI Attempt status.