by cloudwego
deep, reliable and confidential coding-context
# Add to your Claude Code skills
git clone https://github.com/cloudwego/abcoder
ABCoder, an AI-oriented Code-processing Framework, is designed to enhance and extend the coding context for Large-Language-Model (LLM), finally boosting the development of AI-assisted-programming applications.
Universal Abstract-Syntax-Tree (UniAST), a language-independent, AI-friendly specification of code information, providing a boundless, flexible and structural coding context for both AI and humans.
General Parser, parses arbitrary-language codes to UniAST.
General Writer transforms UniAST back to code.
Code-Retrieval-Augmented-Generation (Code-RAG), provides a set of MCP tools to help the LLM understand code repositories precisely and locally. And it can support both in-workspace and out-of-workspace third-party libraries simultaneously -- I guess you are thinking about DeepWiki and context7, but ABCoder is more reliable and confidential -- no need to wait for their services to be done, and no worry about your codes will be uploaded!
Based on these features, developers can easily implement or enhance their AI-assisted programming applications, such as reviewing, optimizing, translating, etc.
ABCoder provides deep integration with Claude Code through the AST-Driven Coding workflow, enabling hallucination-free code analysis and precise execution. Check Claude Code Specification for more details.
Use the init-spec command to automatically configure Claude Code integration for your project:
# Install ABCoder
go install github.com/cloudwego/abcoder@latest
# Run init-spec in your project directory (optional: specify target path)
cd /path/to/your/project
abcoder init-spec
The init-spec command will:
.claude directory to your project root~/.claude.json:
abcoder: for code analysis using ASTsequential-thinking: for complex problem decomposition{{CLAUDE_HOME_PATH}} placeholders with actual project pathsOnce setup, you can start coding with Claude Code:
/abcoder:schedule <problem_desc> to address your feature/requirement/issue, and ABCoder will help you analyze the codebase and design a technical solution./abcoder:task <task_name> to create a coding task(specification)/abcoder:recheck <task_name> before real implementation