add-language

Implement a new language parser across Codanna's six-file architecture.

3|1|Updated Oct 27, 2025
One-click install
npx skills add https://github.com/bartolli/codanna-profiles --skill add-language
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-language
Source: https://github.com/bartolli/codanna-profiles/tree/main/.codanna-profile/profiles/codanna/.claude/skills/add-language
Command: npx skills add https://github.com/bartolli/codanna-profiles --skill add-language

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires tree-sitter, and includes references (resource) components.

What problem does it solve?

Extending Codanna to support new programming languages involves complex parsing, semantic analysis, and integration with the existing architecture. This skill provides a structured, step-by-step guide to implementing new language parsers, significantly reducing the effort and expertise required to expand Codanna's language capabilities.

Core Features & Use Cases

  • Six-File Architecture: Follows a clear, modular structure (mod.rs, definition.rs, parser.rs, behavior.rs, resolution.rs, audit.rs) for consistent implementation.
  • Trait-Based Integration: Guides through implementing core traits (LanguageDefinition, LanguageParser, LanguageBehavior) for seamless integration.
  • Scope & Resolution Design: Helps design language-specific resolution contexts and scoping rules (e.g., LEGB for Python, hoisting for TypeScript).
  • Use Case: You need to add support for a new language like Kotlin. Use this skill to understand the required file structure, implement the core traits, define Kotlin's specific scoping rules, and integrate it into Codanna's registry, ensuring accurate symbol extraction and relationship mapping.

Quick Start

I want to add support for the "Kotlin" programming language to Codanna.

Frequently Asked Questions about add-language

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new programming language parser to Codanna?

Adding a language parser to Codanna requires implementing a six-file architecture (mod.rs, definition.rs, parser.rs, behavior.rs, resolution.rs, audit.rs) and core traits like LanguageDefinition, LanguageParser, and LanguageBehavior. This skill provides step-by-step guidance through the entire integration workflow, from trait implementation to registry setup.

What is the six-file architecture for language implementation in Codanna?

The six-file architecture is a modular structure organizing language parser code: mod.rs handles module exports, definition.rs defines language metadata, parser.rs implements parsing logic using Tree-sitter, behavior.rs specifies language semantics, resolution.rs designs scoping rules, and audit.rs validates implementations. This standardized pattern ensures consistent language support across Codanna.

Can I use Tree-sitter to implement a new language in Codanna?

Yes. Tree-sitter is Codanna's dependency for AST parsing and semantic analysis. This skill guides you through leveraging Tree-sitter grammars within the six-file architecture to build language-specific parsers that integrate with Codanna's trait system and resolution scope design.

What scope and resolution design considerations matter when adding a language?

Language-specific scoping rules must be designed—for example, LEGB for Python or hoisting for TypeScript. The resolution.rs file implements these rules within Codanna's architecture, enabling accurate symbol extraction and relationship mapping for the language you're integrating.

Do I need compiler development experience to add language support to Codanna?

While compiler knowledge is helpful, this skill reduces the barrier by providing structured guidance through semantic analysis, AST handling, and trait implementation patterns. Understanding basic parsing concepts and Tree-sitter workflows is sufficient to follow the step-by-step integration process.