JSPM

  • Created
  • Published
  • Downloads 790
  • Score
    100M100P100Q96024F
  • License Apache-2.0

Language-agnostic AI-powered architecture documentation generator using LangChain and agentic workflows

Package Exports

  • @techdebtgpt/archdoc-generator
  • @techdebtgpt/archdoc-generator/dist/src/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@techdebtgpt/archdoc-generator) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

šŸ—ļø ArchDoc Generator

npm version License: Apache-2.0 TypeScript Node.js Website GitHub

AI-powered architecture documentation generator for any codebase using LangChain and multi-agent workflows.

ArchDoc Generator is an intelligent tool that analyzes your codebase and generates comprehensive, accurate architectural documentation automatically. It supports any programming language and uses AI-powered agents to understand your project structure, dependencies, patterns, security, and data flows.

šŸ“‹ Table of Contents

✨ Features

  • šŸ¤– 7 Specialized Agents: File Structure, Dependencies, Patterns, Flows, Schemas, Architecture, and Security.
  • šŸŒ Language Agnostic: Works with TypeScript, Python, Java, Go, and more.
  • 🧠 AI-Powered: Uses LangChain with Claude 4.5, GPT-5, Gemini 2.5, or Grok 3.
  • šŸ“Š Comprehensive Analysis: Structure, dependencies, patterns, flows, schemas, and security.
  • šŸ“ Markdown Output: Clean, version-controllable documentation.
  • šŸ”„ Iterative Refinement: Self-improving analysis with quality checks.
  • šŸŽØ Customizable: Prompt-based agent selection and configuration.
  • šŸ“ˆ LangSmith Tracing: Full observability of AI workflows.
  • šŸ”’ Security Analysis: Vulnerability detection, authentication review, and crypto analysis.

šŸš€ Quick Start

Installation

# Using npm
npm install -g @techdebtgpt/archdoc-generator

# Using yarn
yarn global add @techdebtgpt/archdoc-generator

# Using pnpm
pnpm add -g @techdebtgpt/archdoc-generator

Run the interactive configuration wizard:

archdoc config --init

This will:

  1. Prompt you to choose an LLM provider (Anthropic/OpenAI/Google).
  2. Ask for your API key.
  3. Create .archdoc.config.json with your configuration.
  4. Validate your setup.

Basic Usage

# Analyze current directory
archdoc analyze

# Analyze specific project
archdoc analyze /path/to/your/project

# Focused analysis with prompt
archdoc analyze --prompt "analyze dependencies and security vulnerabilities"

# Custom output location
archdoc analyze --output ./docs

# Quick analysis (faster, less detailed)
archdoc analyze --depth quick

CLI Usage

archdoc analyze [path] [options]

Options:

Option Description Default
--output <dir> Output directory .arch-docs
--prompt <text> Focus analysis with natural language
--depth <level> Analysis depth: quick, normal, deep normal
--provider <name> LLM provider: anthropic, openai, google
--model <name> Specific model to use
--refinement Enable iterative refinement true
--refinement-iterations <n> Max refinement iterations 5
--refinement-threshold <n> Clarity threshold % 80
--no-clean Don't clear output directory
--verbose Show detailed progress

šŸ”§ Programmatic Usage

Use the library in your Node.js applications:

import {
  DocumentationOrchestrator,
  AgentRegistry,
  FileSystemScanner,
} from '@techdebtgpt/archdoc-generator';

// Setup registry with agents
const registry = new AgentRegistry();
const scanner = new FileSystemScanner();
const orchestrator = new DocumentationOrchestrator(registry, scanner);

// Generate documentation
const docs = await orchestrator.generateDocumentation('/path/to/project', {
  maxTokens: 100000,
  parallel: true,
  iterativeRefinement: {
    enabled: true,
    maxIterations: 5,
    clarityThreshold: 80,
  },
});

console.log('Generated:', docs.summary);

See the API Reference for complete programmatic documentation.

āš™ļø Configuration

Environment Variables

Variable Description
ANTHROPIC_API_KEY Anthropic Claude API key
OPENAI_API_KEY OpenAI GPT API key
GOOGLE_API_KEY Google Gemini API key
XAI_API_KEY xAI Grok API key
DEFAULT_LLM_PROVIDER Default provider (e.g., anthropic)
DEFAULT_LLM_MODEL Default model (e.g., claude-sonnet-4-5-20250929)
LANGCHAIN_TRACING_V2 Enable LangSmith tracing (true)
LANGCHAIN_API_KEY LangSmith API key
LANGCHAIN_PROJECT LangSmith project name

See the Configuration Guide for detailed options.

šŸŽØ What Gets Generated

The tool generates a multi-file documentation structure:

docs/
ā”œā”€ā”€ index.md
ā”œā”€ā”€ metadata.md
ā”œā”€ā”€ file-structure.md
ā”œā”€ā”€ dependencies.md
ā”œā”€ā”€ patterns.md
ā”œā”€ā”€ flows.md
ā”œā”€ā”€ schemas.md
ā”œā”€ā”€ architecture.md
ā”œā”€ā”€ security.md
└── recommendations.md

šŸ¤– Available Agents

Each agent specializes in a specific analysis task:

Agent Purpose Priority
File Structure Project organization, entry points HIGH
Dependency Analyzer External deps, internal imports HIGH
Architecture Analyzer High-level design HIGH
Pattern Detector Design patterns, conventions MEDIUM
Flow Visualization Control & data flows MEDIUM
Schema Generator Data models, interfaces MEDIUM
Security Analyzer Vulnerabilities, auth, crypto MEDIUM

šŸ—ļø Architecture Highlights

Multi-Agent System

The orchestrator coordinates agents to perform analysis.

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  Documentation Orchestrator │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
              │
    ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
    │  Agent Registry   │
    ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
              │
ā”Œā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”  ā”Œā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”
│ Agent 1│  │ Agent 2│  │ Agent N│
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

LangChain LCEL Integration

All agents use LangChain Expression Language (LCEL) for composable AI workflows with unified LangSmith tracing.

šŸ“Š Supported Languages

The tool is language-agnostic and works with:

  • TypeScript/JavaScript
  • Python
  • Java/Kotlin
  • Go
  • C#/.NET
  • Ruby
  • PHP
  • Rust (experimental)
  • And more!

šŸ¤ Contributing

We welcome contributions! See the Contributing Guide for details on:

  • Development setup
  • Creating custom agents
  • Testing guidelines
  • Code style and standards
  • Pull request process

ļæ½ Resources

ļæ½šŸ“„ License

Apache License 2.0 - see the LICENSE file for details.


Made with ā¤ļø by TechDebtGPT