AST Manipulation
SkillMediaExpert skill for abstract syntax tree design, traversal, transformation, and manipulation patterns
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the AST Manipulation skill
What this skill tells your AI
The instructions your AI receives, as published by a5c-ai/babysitter in library/specializations/programming-languages/skills/ast-manipulation/SKILL.md and read by ahel’s review.
Overview
Expert skill for abstract syntax tree design, traversal, transformation, and manipulation patterns.
Capabilities
- Design typed AST node hierarchies
- Implement visitor and transformer patterns
- Build AST rewriting systems
- Implement AST diffing and patching
- Generate AST pretty-printers and formatters
- Support AST serialization (JSON, binary)
- Implement pattern matching on AST structures
- Design span/location tracking systems
Target Processes
- ast-design.js
- semantic-analysis.js
- ir-design.js
- code-generation-llvm.js
- lsp-server-implementation.js
- macro-system-implementation.js
Dependencies
None (core skill)
Usage Guidelines
- Node Design: Design immutable AST nodes with clear ownership semantics
- Location Tracking: Include source spans on all nodes from the beginning
- Visitor Pattern: Implement visitor pattern for extensible traversal
- Transformation: Use transformer pattern for AST-to-AST transformations
- Serialization: Support both human-readable (JSON) and efficient (binary) serialization
Output Schema
{
"type": "object",
"properties": {
"nodeTypes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"fields": { "type": "array" },
"parent": { "type": "string" }
}
}
},
"visitors": {
"type": "array",
"items": { "type": "string" }
},
"transformers": {
"type": "array",
"items": { "type": "string" }
},
"generatedFiles": {
"type": "array",
"items": { "type": "string" }
}
}
}
Signals
- GitHub stars
- 2k
- Forks
- 112
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
ast-manipulation- Source
- github.com/a5c-ai/babysitter