Atlas / Skills / anthropics / Claude Code

Claude CodeCAUTION

skills/anthropics/writing-hookify-rules

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

Verdict
CAUTION
Grade
B
Trust score
89 /100
Version
0.1.0
Hosts
2 documented
License
—
Stars
153,462
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[![npm]](https://www.npmjs.com/package/@anthropic-ai/claude-code)

[npm]: https://img.shields.io/npm/v/@anthropic-ai/claude-code.svg?style=flat-square

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows -- all through natural language commands. Use it in your terminal, IDE, or tag @claude on Github.

Learn more in the [official documentation](https://code.claude.com/docs/en/overview).

Get started

[!NOTE] Installation via npm is deprecated. Use one of the recommended methods below.

For more installation options, uninstall steps, and troubleshooting, see the setup documentation.

  1. Install Claude Code:

MacOS/Linux (Recommended):

curl -fsSL https://claude.ai/install.sh | bash

Homebrew (MacOS/Linux):

brew install --cask claude-code

Windows (Recommended):

irm https://claude.ai/install.ps1 | iex

WinGet (Windows):

winget install Anthropic.ClaudeCode

NPM (Deprecated):

npm install -g @anthropic-ai/claude-code
  1. Navigate to your project directory and run claude.

Plugins

This repository includes several Claude Code plugins that extend functionality with custom commands and agents. See the plugins directory for detailed documentation on available plugins.

Reporting Bugs

We welcome your feedback. Use the /bug command to report issues directly within Claude Code, or file a GitHub issue.

Connect on Discord

Join the Claude Developers Discord to connect with other d

Read from source at commit 3a371d1c267dOBSERVED · 2026-10-26
Advertisement
02

Install

Commands as the repository documents them. They are shown, not run.

npm install -g @anthropic-ai/claude-code
npm install -g @anthropic-ai/claude-code
03

Host compatibility

What the documentation claims. We have not run a compatibility test.

HostStatusNotes
claude-codementioned
claude-desktopmentioned
04

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: claude-opus-4-5-migration
description: Migrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5. Use when the user wants to update their codebase, prompts, or API calls to use Opus 4.5. Handles model string updates and prompt adjustments for known Opus 4.5 behavioral differences. Does NOT migrate Haiku 4.5.
---

# Opus 4.5 Migration Guide

One-shot migration from Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5.

## Migration Workflow

1. Search codebase for model strings and API calls
2. Update model strings to Opus 4.5 (see platform-specific strings below)
3. Remove unsupported beta headers
4. Add effort parameter set to `"high"` (see `references/effort.md`)
5. Summarize all changes made
6. Tell the user: "If you encounter any issues with Opus 4.5, let me know and I can help adjust your prompts."

## Model String Updates

Identify which platform the codebase uses, then replace model strings accordingly.

### Unsupported Beta Headers

Remove the `context-1m-2025-08-07` beta header if present—it is not yet supported with Opus 4.5. Leave a comment noting this:

```python
# Note: 1M context beta (context-1m-2025-08-07) not yet supported with Opus 4.5
```

### Target Model Strings (Opus 4.5)

| Platform | Opus 4.5 Model String |
|----------|----------------------|
| Anthropic API (1P) | `claude-opus-4-5-20251101` |
| AWS Bedrock | `anthropic.claude-opus-4-5-20251101-v1:0` |
| Google Vertex AI | `claude-opus-4-5@20251101` |
| Azure AI Foundry | `claude-opus-4-5-20251101` |

### Source Model Strings to Replace

| Source Model | Anthropic API (1P) | AWS Bedrock | Google Vertex AI |
|--------------|-------------------|-------------|------------------|
| Sonnet 4.0 | `claude-sonnet-4-20250514` | `anthropic.claude-sonnet-4-20250514-v1:0` | `claude-sonnet-4@20250514` |
| Sonnet 4.5 | `claude-sonnet-4-5-20250929` | `anthropic.claude-sonnet-4-5-20250929-v1:0` | `claude-sonnet-4-5@20250929` |
| Opus 4.1 | `claude-opus-4-1-20250422` | `anthropic.claude-opus-4-1-20250422-v1:0` | `claude-opus-4-1@20250422` |

**Do NOT migrate**: Any Haiku models (e.g., `claude-haiku-4-5-20251001`).

## Prompt Adjustments

Opus 4.5 has known behavioral differences from previous models. **Only apply these fixes if the user explicitly requests them or reports a specific issue.** By default, just update model strings.

**Integration guidelines**: When adding snippets, don't just append them to prompts. Integrate them thoughtfully:
- Use XML tags (e.g., `<code_guidelines>`, `<tool_usage>`) to organize additions
- Match the style and structure of the existing prompt
- Place snippets in logical locations (e.g., coding guidelines near other coding instructions)
- If the prompt already uses XML tags, add new content within appropriate existing tags or create consistent new ones

### 1. Tool Overtriggering

Opus 4.5 is more responsive to system prompts. Aggressive language that prevented undertriggering on previous models may now cause overtriggering.

**Apply if**: User reports tools being called too frequently or unnecessarily.

**Find and soften**:
- `CRITICAL:` → remove or soften
- `You MUST...` → `You should...`
- `ALWAYS do X` → `Do X`
- `NEVER skip...` → `Don't skip...`
- `REQUIRED` → remove or soften

Only apply to tool-triggering instructions. Leave other uses of emphasis alone.

### 2. Over-Engineering Prevention

Opus 4.5 tends to create extra files, add unnecessary abstractions, or build unrequested flexibility.

**Apply if**: User reports unwanted files, excessive abstraction, or unrequested features. Add the snippet from `references/prompt-snippets.md`.

### 3. Code Exploration

Opus 4.5 can be overly conservative about exploring code, proposing solutions without reading files.

**Apply if**: User reports the model proposing fixes without inspecting relevant code. Add the snippet from `references/prompt-snippets.md`.

### 4. Frontend Design

**Apply if**: User requests improved frontend design quality or reports generic-looking outputs.

Add the frontend aesthetics snippet from `references/prompt-snippets.md`.

### 5. Thinking Sensitivity

When extended thinking is not enabled (the default), Opus 4.5 is particularly sensitive to the word "think" and its variants. Extended thinking is enabled only if the API request contains a `thinking` parameter.

**Apply if**: User reports issues related to "thinking" while extended thinking is not enabled (no `thinking` parameter in request).

Replace "think" with alternatives like "consider," "believe," or "evaluate."

## Reference

See `references/prompt-snippets.md` for the full text of each snippet to add.

See `references/effort.md` for configuring the effort parameter (only if user requests it).
05

Trust audit

CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (7 observation(s))
Network
declared (9 observation(s))
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (23)

HIGHPrompt injection · prompt.credential_read · CWE-94, CWE-1427
plugins/plugin-dev/skills/command-development/SKILL.md:531
Plugin commands have access to `${CLAUDE_PLUGIN_ROOT}`, an environment variable that resolves to the plugin's absolute path.
Why it matters. asks the agent to read credentials
LOWFilesystem / path · fs.credential_store · CWE-22, CWE-59
.github/ISSUE_TEMPLATE/model_behavior.yml:99
- /Users/me/.ssh/config
Why it matters. touches a credential store
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
.github/ISSUE_TEMPLATE/model_behavior.yml:100
- ../../../parent-directory/secrets.env
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
mods/diff/hooks/backend/types/backend-host/backend-host.ts:1
import type Git from '../../../git'
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
mods/diff/hooks/backend/types/backend-host/backend-host.ts:2
import type { Host } from '../../../host'
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
mods/diff/hooks/backend/types/backend/backend.ts:1
import type Git from '../../../git'
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
mods/diff/hooks/git/argv/pinned-lead-of/pinned-lead-of.ts:1
import type Types from '../../types'
LOWObfuscation / stealth · obf.decode_call · CWE-506, CWE-94
mods/types/claude-code.d.ts:11690
function atob(data: string): string
LOWObfuscation / stealth · obf.rtl_override · CWE-506, CWE-94
mods/diff/tests/views/pane-view.test.ts:319
expect(compared + empty).not.toContain('')
LOWObfuscation / stealth · obf.rtl_override · CWE-506, CWE-94
mods/diff/tests/views/pane-view.test.ts:346
const reversed = await untrackedOf('invoicetxt.exe')
LOWObfuscation / stealth · obf.rtl_override · CWE-506, CWE-94
mods/diff/tests/views/pane-view.test.ts:365
expect(Fixtures.jsonOf(reversed)).not.toContain('')
INFOInventory / provenance · inv.oversize · CWE-1104
CHANGELOG.md
CHANGELOG.md
Why it matters. 1085784 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
demo.gif
demo.gif
Why it matters. 11002760 bytes not read
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
plugins/feature-dev/agents/code-architect.md:9
You are a senior software architect who delivers comprehensive, actionable architecture blueprints by deeply understanding codebases and making confident architectural decisions.
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
plugins/plugin-dev/agents/agent-creator.md:110
- **Tools**: Recommend minimal set needed, or omit for full access
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
plugins/plugin-dev/skills/agent-development/SKILL.md:160
- Full access: Omit field or use `["*"]`
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
plugins/plugin-dev/skills/agent-development/examples/complete-agent-examples.md:405
- **Full access**: Omit tools field
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
mods/agents-md/README.md:96
| `tool.call` on `Read` | under `claude-md-or-agents-md` and `claude-md-and-agents-md`, for a file under the session's project root (`$.session.root()`, read live, so `/cd`, a host's directory change
Why it matters. asks the agent to read credentials
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
mods/telemetry/README.md:46
deployment with its own OAuth URL. Each is read through `$.env` and
Why it matters. asks the agent to read credentials
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
plugins/plugin-dev/skills/mcp-integration/references/authentication.md:223
Load with: \`source .env\` or \`export $(cat .env | xargs)\`
Why it matters. asks the agent to read credentials
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:23
curl -fsSL https://claude.ai/install.sh | bash
INFOPrompt injection · prompt.read_system · CWE-94, CWE-1427
plugins/plugin-dev/skills/agent-development/references/agent-creation-system-prompt.md:186
Always define clear output format in system prompt:
INFOPrompt injection · prompt.read_system · CWE-94, CWE-1427
plugins/plugin-dev/skills/agent-development/references/system-prompt-design.md:386
Read the system prompt and ask:

Gates applied: no_behavioural_pass.

Audited 2026-10-26 · audit v0.4.1 · source sha 3a371d1c267dfull audit observations/trust-audit/skill/anthropics__writing-hookify-rules.json · Report an issue / request a re-scan
06

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-263a371d1c267dCAUTIONB89first audit
07

Questions

What does the Writing Hookify Rules — anthropics/claude-code skill do?

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

Is Writing Hookify Rules — anthropics/claude-code safe to install?

With care. The audit graded it B (89/100) and found 23 things worth knowing before you trust this skill, listed below with the exact line each was found on.

What can Writing Hookify Rules — anthropics/claude-code access on my machine?

The audit observed that it reaches the network and reads or writes files. Each of those is consistent with what it says it does. Secrets in the source: none found.

Which assistants does Writing Hookify Rules — anthropics/claude-code work with?

Its documentation mentions claude-code and claude-desktop. That is what the text claims, not a compatibility test we ran.

How current is this page?

The grade is for one exact copy of the source (3a371d1c267d), read on 2026-10-26. The repository is watched, and a new audit runs when it changes — this is the first audit.

Add this badge to your README

Shows this page's audit result and links back to it. It updates when the audit does.

ModelsAtlas audit badge

Markdown
[![ModelsAtlas audit: Claude Code](https://modelsatlas.com/skills/anthropics/writing-hookify-rules/badge.svg)](https://modelsatlas.com/skills/anthropics/writing-hookify-rules/)

Not your listing, or something out of date? Claim or update your listing.

Advertisement