Intro

https://code.claude.com/docs/en/overview

CLI

https://code.claude.com/docs/en/cli-reference

| Command             | What it does                                           | Example                             |
| ------------------- | ------------------------------------------------------ | ----------------------------------- |
| `claude`            | Start interactive mode                                 | `claude`                            |
| `claude "task"`     | Run a one-time task                                    | `claude "fix the build error"`      |
| `claude -p "query"` | Run one-off query, then exit                           | `claude -p "explain this function"` |
| `claude -c`         | Continue most recent conversation in current directory | `claude -c`                         |
| `claude -r`         | Resume a previous conversation                         | `claude -r`                         |
| `/clear`            | Clear conversation history                             | `/clear`                            |
| `/help`             | Show available commands                                | `/help`                             |
| `exit` or `Ctrl+D`  | Exit Claude Code                                       | `exit`                              |
 

Getting Started

❯ what can claude do?

● In the context of building apps like this one with the Claude API, Claude can:

Core capabilities:

  • Text generation β€” answers, summaries, explanations (what this project already uses)
  • Tool use β€” Claude can call functions/tools you define (e.g., look up a database, call
    an API)
  • Vision β€” analyze images, PDFs, documents
  • Multi-turn conversations β€” maintain context across a back-and-forth dialogue
  • Structured output β€” return JSON or follow strict formats reliably

Advanced features:

  • Extended thinking β€” deeper reasoning for complex problems (Opus/Sonnet models)
  • Prompt caching β€” cache large system prompts to reduce latency and cost
  • Batch API β€” process many requests asynchronously at lower cost
  • Files API β€” upload and reuse files across requests
  • Streaming β€” stream tokens as they’re generated for real-time output

In this project specifically, you’re only using the most basic feature β€” a single-turn
text prompt. There’s a lot of room to extend it, e.g., adding tool use to look up
nutritional data, or multi-turn conversation so users can follow up with questions.

Want to explore adding any of these to the project?

✻ Crunched for 11s

❯ how do i create custom skills in claude code?

● claude-code-guide(How to create custom skills in Claude Code)
⎿  Done (3 tool uses · 50.4k tokens · 17s)
(ctrl+o to expand)

● Custom skills in Claude Code are reusable prompt instructions stored as SKILL.md files. Here’s the quick rundown:

Where they live:
~/.claude/skills//SKILL.md # personal (all projects)
.claude/skills//SKILL.md # project-scoped

File format:

description: What the skill does (used for auto-invocation)
allowed-tools: Bash Read # pre-approve tools

Your instructions here in markdown. Use $ARGUMENTS to capture user input.

How to invoke:

  • You type /skill-name in chat
  • Or Claude auto-invokes it when your request matches the description

Useful frontmatter options:

  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚             Option             β”‚                      Effect                      β”‚    
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ description                    β”‚ Triggers auto-invocation when relevant           β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ disable-model-invocation: true β”‚ Only you can invoke it, not Claude automatically β”‚    
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ user-invocable: false          β”‚ Only Claude can invoke it, not you               β”‚    
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€    
  β”‚ allowed-tools                  β”‚ Pre-approve tools without permission prompts     β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€    
  β”‚ context: fork                  β”‚ Run in an isolated subagent                      β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  

A good rule of thumb: if you keep pasting the same instructions into chat, turn it into a skill.

✻ Churned for 26s

can claude code work with docker

● claude-code-guide(Can Claude Code work with Docker)
⎿  Done (4 tool uses · 18.2k tokens · 22s)
(ctrl+o to expand)

● Yes, Claude Code works well with Docker in two main ways:

  1. Claude Code inside a Dev Container (recommended)

Add it to your .devcontainer/devcontainer.json:
{
β€œimage”: β€œmcr.microsoft.com/devcontainers/base:ubuntu”,
β€œfeatures”: {
β€œghcr.io/anthropics/devcontainer-features/claude-code:1.0”: {}
}
}
Then rebuild and run claude inside the container. Works with VS Code, GitHub Codespaces, and JetBrains.

  1. Running Docker commands via Claude Code

Since Claude Code has full Bash access, it can run any Docker commands on your behalf β€”
docker build, docker run, docker compose up, etc.

Useful extras:

  • Mount ~/.claude as a volume to persist credentials across container rebuilds
  • Use β€”dangerously-skip-permissions for unattended CI/CD pipelines
  • Enforce org-wide settings via /etc/claude-code/managed-settings.json in your Dockerfile

There’s no standalone pre-built Docker image for Claude Code β€” it’s installed via the Dev Container feature instead.

✻ Cogitated for 30s