TRIGGER when: user wants structural code pattern search (ast-grep) or static lint against selected files, or wants to turn a fix diff into a rule-pack draft. Covers `ast_find_pattern`, `lint_files`, `extract_rule_template`.
Scanned 5/28/2026
Install to Claude Code
npx -y skills add drhalto/agentmako --skill mako-code-intel --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Mako Code Intel?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/drhalto-mako-code-intel)More formats (shields.io, HTML) on the badges page.
---
description: >-
TRIGGER when: user wants structural code pattern search (ast-grep) or static
lint against selected files, or wants to turn a fix diff into a rule-pack
draft. Covers `ast_find_pattern`, `lint_files`, `extract_rule_template`.
when_to_use: >-
Use when text search is too weak for a syntax pattern, when the user wants
focused diagnostics/static findings for known files, or after fixing a bug
shape that should become project knowledge.
allowed-tools: "mcp__mako-ai__*"
---
# Mako Code Intel
Use this skill for static code queries that are best answered by syntax-aware
search or diagnostics. It is not the general repo-orientation skill; use
`repo_map` through `/mako-ai:mako-discovery` for that.
## Tools
### `ast_find_pattern`
Use for structural code pattern search over indexed TypeScript, TSX,
JavaScript, and JSX files.
- Best for finding syntax shapes that text search may miss.
- Use for patterns such as function calls, JSX attributes, hook usage,
imports, conditionals, or unsafe constructs.
- Keep searches bounded with focused patterns and file scopes when possible.
- TSX/JSX snippets starting with `{`, `[`, or `<` also run with parser
context, so callers usually do not need to wrap lone object or JSX patterns.
Check `patternAttempts` and match `patternVariant` when you need to know
whether the original or auto-anchored form matched.
- List metavariables in `captures` when you need captured values returned.
- If the result is a false positive that should not recur, use `finding_ack`
from `/mako-ai:mako-workflow` with the returned `ackableFingerprint`.
### `lint_files`
Use for focused lint/static diagnostics against selected files.
- Best after editing files or when reviewing a known suspect area.
- Defaults to compact output; pass `verbosity: "full"` or `maxFindings` when
broad diagnostics are actually needed.
- YAML rule packs under `.mako/rules` hot-reload in long-running MCP sessions.
- For helper-bypass checks, rule packs may declare `canonicalHelper` with a
helper `symbol` and optional `path`; matching files that already reference
the helper are suppressed, while bypasses emit producer/consumer context.
- Use the returned finding identity/fingerprint when acknowledging reviewed
diagnostics.
- Do not use `agent_feedback` to suppress a diagnostic; use `finding_ack`.
### `extract_rule_template`
Use after a fix lands and the removed shape should become future project
knowledge.
- Pass the local git `fixCommit`; optionally pass `baseCommit`, `filePath`, and
`ruleIdPrefix`.
- Treat the returned `draftYaml` as a draft. Review broad patterns and caveats
before placing it under `.mako/rules`.
- Follow with `rule_pack_validate` and a focused `lint_files` run before relying
on the new rule.
## Feedback Logging
Log `agent_feedback` when a tool run here was notably useful, partial,
noisy, stale, wrong, or wasted the turn. Skip routine calls.
Required procedure (see `/mako-ai:mako-guide` for full rules and
reason-code vocabulary):
1. Call `recall_tool_runs` to get the prior run's `requestId`. Do not
fabricate one — if no run is recalled, skip feedback.
2. Call `agent_feedback` with `referencedToolName`,
`referencedRequestId`, `grade: "full" | "partial" | "no"`,
`reasonCodes` from the starter vocabulary in `/mako-ai:mako-guide`,
and a short `reason`.
For individual false-positive or reviewed-accepted static findings from
`ast_find_pattern` or `lint_files`, use `finding_ack` with the returned
`ackableFingerprint` (ast) or `identity.matchBasedId` (lint) — never
`agent_feedback` to suppress static findings. Rate the tool run's
usefulness with `agent_feedback`; mark individual findings with
`finding_ack`. See `/mako-ai:mako-workflow` for `finding_ack` usage.
## See Also
- Use `/mako-ai:mako-discovery` for repo orientation and broad cross-surface
search.
- Use `/mako-ai:mako-graph` for import impact, cycles, hotspots, and symbols.
- Use `/mako-ai:mako-workflow` for `finding_ack` and finding ack reports.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!