agent-disallowed-tools
Agent disallowedTools must be an array of tool names
$ npx -y skills add pdugan20/claudelint --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Agent disallowedTools must be an array of tool names
Agent definition
agent-disallowed-tools.mddescription: "Agent disallowedTools must be an array of tool names"
agent-disallowed-tools
<RuleHeader description="Agent disallowedTools must be an array of tool names" severity="error" :fixable="false" :configurable="false" category="Agents" />
Rule Details
This rule enforces that the `disallowedTools` field in agent markdown frontmatter is a valid array of strings. Each entry should be a tool name that the agent is prohibited from using. Validation is delegated to the AgentFrontmatterSchema Zod schema. Proper formatting prevents runtime errors when the agent framework parses tool restrictions.
Incorrect
disallowedTools as a single string instead of array
---
name: safe-agent
description: Agent with tool restrictions
disallowedTools: Bash
---
disallowedTools with non-string entries
---
name: safe-agent
description: Agent with tool restrictions
disallowedTools:
- 123
- true
---
Correct
disallowedTools as a valid array of tool names
---
name: safe-agent
description: Agent with tool restrictions
disallowedTools:
- Bash
- Write
---
How To Fix
Ensure `disallowedTools` is formatted as a YAML array of strings. Each entry should be a valid tool name like Bash, Write, Edit, or WebFetch.
Options
This rule does not have any configuration options.
Related Rules
- [`agent-tools`](/rules/agents/agent-tools)
Resources
- [Rule Implementation](https://github.com/pdugan20/claudelint/blob/main/src/rules/agents/agent-disallowed-tools.ts)
- [Rule Tests](https://github.com/pdugan20/claudelint/blob/main/tests/rules/agents/agent-disallowed-tools.test.ts)
Version
Available since: v0.2.0
Read more
description: "Agent disallowedTools must be an array of tool names"
agent-disallowed-tools
<RuleHeader description="Agent disallowedTools must be an array of tool names" severity="error" :fixable="false" :configurable="false" category="Agents" />
Rule Details
This rule enforces that the `disallowedTools` field in agent markdown frontmatter is a valid array of strings. Each entry should be a tool name that the agent is prohibited from using. Validation is delegated to the AgentFrontmatterSchema Zod schema. Proper formatting prevents runtime errors when the agent framework parses tool restrictions.
Incorrect
disallowedTools as a single string instead of array
--- name: safe-agent description: Agent with tool restrictions disallowedTools: Bash ---
disallowedTools with non-string entries
--- name: safe-agent description: Agent with tool restrictions disallowedTools: - 123 - true ---
Correct
disallowedTools as a valid array of tool names
--- name: safe-agent description: Agent with tool restrictions disallowedTools: - Bash - Write ---
How To Fix
Ensure `disallowedTools` is formatted as a YAML array of strings. Each entry should be a valid tool name like Bash, Write, Edit, or WebFetch.
Options
This rule does not have any configuration options.
Related Rules
- [`agent-tools`](/rules/agents/agent-tools)
Resources
- [Rule Implementation](https://github.com/pdugan20/claudelint/blob/main/src/rules/agents/agent-disallowed-tools.ts)
- [Rule Tests](https://github.com/pdugan20/claudelint/blob/main/tests/rules/agents/agent-disallowed-tools.test.ts)
Version
Available since: v0.2.0
A linter for Claude Code projects. Validates CLAUDE.md files, skills, settings, hooks, MCP servers, plugins, and more.
Repo: pdugan20/claudelint
Other agents on claudelint.
- claude-md-optimizer
Use this agent when the user wants to autonomously validate and optimize their CLAUDE.md files. This agent runs claudelint validation, analyzes results, and makes targeted improvements to reduce file size, fix import issues, remove generic content, and improve organization.
Open agent - agent-body-too-short
Agent body content should meet minimum length requirements
Open agent - agent-description
Agent description must be at least 10 characters
Open agent - agent-events
Agent events must be an array with maximum 3 event names
Open agent - agent-hooks-invalid-schema
Hook configuration in agents.json violates schema requirements
Open agent - agent-hooks
Agent hooks must be an object with event name keys
Open agent

