Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
102 changes: 102 additions & 0 deletions .claude/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
{
"hooks": {
"SessionStart": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code session-start",
"timeout": 30,
"async": true
}
Comment on lines +8 to +12

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
],
"SessionEnd": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code session-end",
"timeout": 30,
"async": true
}
Comment on lines +20 to +25

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
],
"UserPromptSubmit": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code user-prompt-submit",
"timeout": 30,
"async": true
}
Comment on lines +33 to +38

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
],
"Stop": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code stop",
"timeout": 30,
"async": true
}
Comment on lines +46 to +51

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
],
"PreToolUse": [
{
"matcher": "Task",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code pre-task",
"timeout": 30,
"async": true
}
Comment on lines +59 to +64

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
],
"PostToolUse": [
{
"matcher": "Task",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code post-task",
"timeout": 30,
"async": true
}
Comment on lines +72 to +77

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
},
{
"matcher": "TodoWrite",
"hooks": [
{
"type": "command",
"command": "entire hooks claude-code post-todo",
"timeout": 30,
"async": true
}
Comment on lines +83 to +88

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hook command relies on the entire binary, but this repo doesn’t appear to install entire cross-platform (it’s only listed in the Darwin Homebrew bundle). As-is, contributors without entire will get failing hooks. Consider guarding the command (e.g., check command -v entire first) or routing through a repo-managed script that no-ops when unavailable.

Copilot uses AI. Check for mistakes.
]
}
]
},
"env": {
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-4-6-1m",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The ANTHROPIC_DEFAULT_HAIKU_MODEL is set to a Sonnet model (claude-sonnet-4-6-1m). This is likely a configuration error. Haiku models are designed for speed and lower cost, so using a Sonnet model here negates those benefits and may have unintended performance and cost implications. Please update this to a valid Haiku model identifier.

"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6-1m"
Comment on lines +94 to +95

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The model IDs here don’t match the repo’s configured Anthropic model names (e.g., models.json and config/claude/settings.json use claude-sonnet-4-6 and claude-haiku-4-5-20251001). Unless claude-sonnet-4-6-1m is a confirmed valid model in your environment, this will likely break model selection. Also, setting ANTHROPIC_DEFAULT_HAIKU_MODEL to a Sonnet model looks accidental—consider using the configured Haiku model (or remove the Haiku override).

Suggested change
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-4-6-1m",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6-1m"
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5-20251001",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6"

Copilot uses AI. Check for mistakes.
},
Comment on lines +93 to +96

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Model version mismatch between project and user configs.

This project-scoped config sets models to claude-sonnet-4-6-1m, while the user-scoped config/claude/settings.json sets them to claude-sonnet-4-6. Project-scoped settings typically take precedence, so this repository will use different models than defined in the user config.

If this is intentional (e.g., 1m context for this specific project), consider adding a comment. Otherwise, align the model versions.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.claude/settings.json around lines 93 - 96, The project-level env keys
ANTHROPIC_DEFAULT_HAIKU_MODEL and ANTHROPIC_DEFAULT_SONNET_MODEL are set to
"claude-sonnet-4-6-1m" which conflicts with the user-level config that uses
"claude-sonnet-4-6"; either change these two values to match the user config
(claude-sonnet-4-6) or, if the 1m context is intentional for this repo, add a
concise comment next to these env entries explaining the deliberate override so
maintainers know why the project-level models differ.

"permissions": {
"deny": [
"Read(./.entire/metadata/**)"
]
}
}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# AI
.claude
.claude/*
!.claude/settings.json
.pi
.worktrees
prompts.db
Expand Down
11 changes: 6 additions & 5 deletions config/claude/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,8 @@
{
"type": "command",
"command": "git-ai checkpoint claude --hook-input stdin",
"timeout": 15
"timeout": 15,
"async": true
}
]
}
Expand Down Expand Up @@ -183,8 +184,7 @@
{
"type": "command",
"command": "command -v dcg >/dev/null 2>&1 && dcg",
"timeout": 5,
"async": true
"timeout": 5
},
{
"type": "command",
Expand All @@ -211,7 +211,8 @@
{
"type": "command",
"command": "git-ai checkpoint claude --hook-input stdin",
"timeout": 15
"timeout": 15,
"async": true
}
]
},
Expand All @@ -220,7 +221,7 @@
"hooks": [
{
"type": "command",
"command": "dcg",
"command": "command -v dcg >/dev/null 2>&1 && dcg",
"timeout": 5
}
]
Expand Down
Loading