For months I used AI like everyone else: I pasted a text or an error into a chat, copied the answer and pasted it back where it belonged. It worked, but I was the messenger. Claude Code changed that: instead of answering me, it opens the folder, makes the change, runs whatever it needs and shows me what it touched.
For this post I did not want to tell it from memory. I set up a test folder (a small agency's, with clients, invoices, photos and a messy README), ran the 5 prompts below there and copied what happened. Everything you see in the screenshots is the real output.
- Reads and edits your files
- Runs commands and reads the result
- Skills: recipes it saves and reuses
- Hooks: rules that enforce themselves
- Subagents: several tasks at once
What Claude Code is
Claude Code is Anthropic's coding agent. It works directly on your folders: it reads your files, edits them, runs commands and connects to other tools through MCP. Unlike a chat, it does not just answer: it does the work and asks your permission before anything sensitive. It is an AI agent, not a chatbot.
Source: Official Claude Code documentation
How I picked these 5
I did not take them from the documentation. They are the ones I use every day. Before writing, I counted my own sessions from June 4 to October 12: 195 sessions, 957 files created and 1,977 edits. These 5 are the ones I use most.
How I counted: I read the logs Claude Code keeps on my Mac and added up only the sessions I opened myself, without subagents, with every file it created and every edit it made. In the compaction post I talk about 264 sessions in 14 days of September: that count measures cost, with a different filter and a different cutoff date, so the two numbers do not add up together.
1. Reads and edits your files
With a chat you copy the text, paste it, copy the answer and paste it back. By the third round trip something slips through. Claude Code opens the file, proposes the change and does not save until you say yes. This is the README from my test folder, before and after a single prompt:
BeforeREADME.md
# Agency files This folder has all the stuff for the agency. Clients are in the clients folder, each one has a folder with their things like the logo and notes and also the contract sometimes, and invoices are in facturas which is where we put the invoices when we send them out to clients every month, and there are photos in fotos too. Templates are in plantillas. Don't delete the viejo folder because maybe we need something from there later, we are not sure yet.
AfterREADME.md
# Agency files This folder holds all of the agency's material: - clientes/: one folder per client, with their logo, notes and, sometimes, the contract. - facturas/: invoices sent to clients each month. - fotos/: photographs. - plantillas/: document templates. - viejo/: old files. Do not delete it: we do not know yet whether we will need something from there.
Notice what it did not touch: the How to use section stayed as it was because I only asked for the first one. When it finished, it offered to tidy that one up too.
Try it yourself: copy this into Claude Code.
Read the README.md file in this folder and rewrite the first section so it is shorter and clearer. Show me the change before saving it.
2. Runs commands and reads the result
With a chat, it gives you the command, you run it, an error comes out and you paste the error back. You are the messenger between the AI and your computer. Here I asked it to check the folder and it did it on its own, in 9 seconds and with a single command:
> Check what is in this folder: count how many files there are of each type and tell me which 5 are the heaviest.
Bash(find . -type f | ... | sort | uniq -c | sort -rn)
Total files:
14
--- By extension ---
6 md
3 jpg
2 txt
2 csv
1 mp4
--- Top 5 heaviest ---
2500000 ./fotos/video-local.mp4
1200000 ./fotos/sesion-3.jpg
800000 ./fotos/sesion-2.jpgTry it yourself: copy this into Claude Code.
Check what is in this folder: count how many files there are of each type and tell me which 5 are the heaviest. Run whatever commands you need and explain what you did.
3. Skills: recipes it saves and reuses
Every time you repeat a task you explain everything again: the format, the steps, what it must not do. A skill is a folder with a SKILL.md file: the recipe for that task. Claude Code loads it on its own when the task matches, or you call it with /name.
Today, October 21, I have 79 skills. Each one is a task I no longer have to explain again.
When I wrote this post there were 96. On October 15 I moved 25 I was not using to an archive folder, because Claude Code reads the name and description of every skill when the session opens, and that text is processed again on every turn. Since then I added 8. The lesson: a skill you do not use still costs, because it always loads.
How I counted: folders with a SKILL.md inside ~/.claude/skills, not counting the archive. Skills that come with plugins are not in the number.
This is the one it wrote from the prompt below. Notice the rule it added without being asked:
.claude/skills/resumen-reunion/SKILL.md (excerpt)
--- name: resumen-reunion description: Turns meeting notes into a structured summary with 3 decisions, tasks (owner and date) and open questions. --- ## Rules - Do not make up data. If a task has no owner or date in the notes, write "Unassigned" or "No date". - If something is ambiguous, put it under Open questions.
Create yours: copy this into Claude Code.
Create a skill called resumen-reunion at .claude/skills/resumen-reunion/SKILL.md. When I give it the notes from a meeting, it should return: 3 decisions, tasks with an owner and a date, and open questions. Show me the file before saving it.
4. Hooks: rules that enforce themselves
You ask it for something ten times (format the code, tell me when you finish, do not touch this folder) and on the eleventh it forgets. A hook is a command that runs on its own at a fixed moment: before or after an edit, when a task ends, when the session starts. It does not depend on the AI remembering; Claude Code runs it every time. I have 13, spread across 9 moments of the session.
When I asked for this hook, it proposed the JSON. I told it to save it and it answered this:
“I could not save it: writing to .claude/settings.json requires a permission that has not been granted.”
I had given it permission to edit files, but not that one. Files that change how Claude Code behaves ask for their own permission, and that is what you want from a tool that runs commands. You approve it once and you are done.
.claude/settings.json
{
"hooks": {
"Stop": [
{ "hooks": [
{ "type": "command",
"command": "afplay /System/Library/Sounds/Glass.aiff" }
] }
]
}
}These are mine, grouped by what they do:
| What for | How many | When it runs |
|---|---|---|
| Style rules (keep answers to the point) | 2 | When the session opens and on every message |
| Reminder to write down what was learned | 6 | On open, on every message, after an edit or a command, when a subagent starts and ends, before compacting |
| Warning when the session gets too heavy | 1 | On every message |
| Session summary to my notes | 1 | When it finishes |
| Pane status: working or waiting for me | 3 | When it finishes, on notifications and when it asks for permission |
My favorite is the learning one. Before it runs, it compares the SHA-256 fingerprint of its script with the one I saved when I installed it. If someone, or the AI itself, changed the script, the hook refuses to run and tells me. A hook runs with your permissions and without asking, so it pays to make sure nobody can change it silently.
Try it yourself: copy this into Claude Code.
Create a Stop hook in this project's .claude/settings.json that plays a sound when you finish a task (on Mac use: afplay /System/Library/Sounds/Glass.aiff). Show me the JSON before saving it and tell me how to test it.
5. Subagents: several tasks at once
A big task fills up the conversation and the agent starts to lose the thread. With subagents, Claude Code splits up the work: each one runs in parallel with its own context and hands back only the conclusion. I asked for 3 at once and in 18 seconds it gave me back a single table:
| What it found | Path | Detail |
|---|---|---|
| Untouched for 6+ months | borradores/post-resenas-copia.md | Feb 1, 2026 |
| Untouched for 6+ months | viejo/propuesta.md | Feb 1, 2026, also a duplicate |
| Untouched for 6+ months | facturas/2026-08.csv | The name says August and the date says February: review |
| Duplicate by name | viejo/propuesta.md and plantillas/propuesta.md | Same name, contents not compared |
| Empty folder | viejo/vacia | No files or subfolders |
The row I liked is the third. Nobody asked it to check dates against names, but it noticed that facturas/2026-08.csv had a February date and flagged it for review before calling it old.
Try it yourself: copy this into Claude Code.
Use 3 subagents in parallel: one lists the files in this folder that have not been touched in 6 months, another looks for files with duplicate names, and another looks for empty folders. Put what they find into a single table and do not delete anything.
Try it in 10 minutes
Install it with one command. On Mac or Linux, open Terminal and paste:
curl -fsSL https://claude.ai/install.sh | bash
On Windows, in PowerShell: irm https://claude.ai/install.ps1 | iex. Then go into a folder with cd, type claude and sign in with your account. Open a folder with a messy file and paste the prompt from point 1. If it showed you the change before saving it, you have already seen the difference from a chat.
Source: Official Claude Code documentation (installation)
How much does Claude Code cost?
It is included in the Pro plan ($20 a month, or $17 a month billed annually) and the Max plan (from $100 a month). The free plan does not include it. You can also use it pay-as-you-go with an Anthropic API account.
Is it safe to let it touch my files?
It works inside the folder where you open it and asks permission before editing files or running commands you have not approved. You decide what it can do on its own and what it has to ask you about.
Do I need to know how to code?
Not to get started. You talk to it like a chat. Knowing how to code helps you review what it does, but the prompts in this post work in any folder, even one with no code.
Where do you use it: terminal, app or browser?
All four: the terminal, the editor (VS Code and JetBrains), the Claude desktop app (Code tab) and the browser at claude.ai/code. They all use the same engine and read the same CLAUDE.md.


