claude code

https://www.anthropic.com/claude-code

Unleash Claude’s raw power directly in your terminal. Search million-line codebases instantly. Turn hours-long workflows into a single command. Your tools. Your workflow. Your codebase, evolving at thought speed.

References

Experimentation

Some of my observation playing with claude code.

Good

  • Slash commands are powerful shortcuts to execute repetitive instructions across projects.
  • You can send instructions while claude code is “thinking”.
  • There’s a native “plan” mode that can be used, like Aider’s architect mode.
  • claude code is using an internal TODO list, so claude code automatically break down the task asked into multiple smaller tasks, i.e. no need for specific system/user prompt for this approach.
  • VIM mode, although it can be improved with more VIM motions/features.
  • claude code picks up the required context of the codebase by itself, even if the prompt is vague.
  • We can run parallel claude code sessions, so we can get multiple versions of a solution, which is a great idea as LLM are non-deterministic by nature, so this helps us choose the best version the LLM produced.
  • claude code is fast to produce code, compared to some other AI agents.
  • claude code seems to work quite well on large codebase, like the monolith.
  • claude code can execute multiple sub-agents in parallel, example of prompt to run in parallel:
### Step 1: Load and Parse Data Sources
1. Read `TODO.md` to get list of JIRA ticket IDs (format: P3C-XXXX)
2. Read and parse `2025-06-20-de-medical_rules.csv` to extract medical rule data
3. Map CSV rule data to corresponding JIRA tickets

### Step 2: Agent Coordination Strategy
Deploy maximum 5 parallel agents to process tickets efficiently:

**Agent Assignment Protocol:**
- Each agent processes one JIRA ticket ID
- No duplicate ticket processing between agents
- Each agent receives:
  - JIRA ticket ID
  - Corresponding medical rule data from CSV
  - This formatting template

**Parallel Execution Rules:**
- Launch all agents simultaneously using Task tool
- Monitor completion status
- Ensure thread-safe processing (no conflicts)

Bad

  • Cannot use symlink for the user slash commands and global CLAUDE.md… Which is not nice, if I want to store them in my dotfiles.
  • I cannot open an editor from the input field. This limit when I want to create a complex prompt.
    • Mitigate by creating a file with the desired prompt and have claude code read it, which is not a nice devex, especially if I want to paste some big error logs for example.
  • I can’t seem to add custom system prompts.
  • The documentation seems to be out-of-date, as the settings is located at $HOME/.claude.json, not in $HOME/.claude/settings.json.
  • The internal TODO list cannot be shared between sessions.
  • History is located in $HOME/.claude.json, but only the user prompts are displayed, not the LLM’s output.
  • The --add-dir flag when invoking CLI for specifying additional directories does not work well…

Tips