> ## Documentation Index
> Fetch the complete documentation index at: https://docs.handauncle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Claude Code prompts

> Using Anthropic's CLI to reason about large diffs

Claude Code is perfect for summarizing large TypeScript files, generating test
cases, and drafting docs based on existing implementations. Below is a template
`CLAUDE.md` tailored to this repository.

## Install + launch

```bash theme={null}
npm install -g @anthropic-ai/claude-code
claude
```

Run the CLI from the repository root so Claude can read both `/src` and `/docs`.

## `CLAUDE.md`

```markdown theme={null}
# Handa Uncle backend

- Stack: Bun runtime, Hono router, MongoDB, Redis, Auth0, Exotel, Pinecone, Langfuse.
- Never fabricate API responses. Quote the source file or OpenAPI spec instead.

## Before editing

1. Run `git status` and list existing changes.
2. Ask whether there are uncommitted secrets or `.env*` files—never open them.
3. Identify the owner file (controller, service, repository) before proposing edits.

## Style

- Logs use `logger` from `src/shared/utils/logger.ts`.
- Errors come from `src/shared/utils/errors.ts`.
- Docs live in `/docs` and use Mintlify components (Note, Tip, Steps, etc.).
- Always include verification steps (curl snippets, health check output).

## Testing

- Run `bun run typecheck` after touching TypeScript.
- Run `bun test path/to/file.test.ts` when adding/changing logic.

## Things to watch

- `/app/*` routes are unauthenticated but rely on headers; never remove validation.
- OTP flows must respect `OTP_RESEND_COOLDOWN_SECONDS`.
- Any new API endpoint needs an entry in `docs/api-reference/openapi.json`.
- If you add env vars, update `env.schema.ts` and `/docs/essentials/settings`.
```

## Suggested prompts

* “Summarize how `AppLaunchService` identifies a user based on headers.”
* “Generate unit tests for the retry logic inside `otp.service.ts`.”
* “Draft documentation for a new `/api/v1/profile/preferences` endpoint based on the controller.”

## Review habits

* Ask Claude to explain risky diffs before accepting them.
* Use the `/focus` command on large files (e.g. repositories) to keep context
  small.
* Prefer smaller iterative sessions—you can always re-run Claude with more files
  if needed.
