{"id":31443545,"url":"https://github.com/aigne-io/aigne-doc-smith","last_synced_at":"2026-03-11T17:01:57.411Z","repository":{"id":310590754,"uuid":"1028185767","full_name":"AIGNE-io/aigne-doc-smith","owner":"AIGNE-io","description":"AIGNE DocSmith is a powerful, AI-driven documentation generation tool built on the AIGNE Framework. It automates the creation of detailed, structured, and multi-language documentation directly from your source code.","archived":false,"fork":false,"pushed_at":"2025-09-24T09:56:42.000Z","size":1528,"stargazers_count":285,"open_issues_count":5,"forks_count":276,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-24T10:35:57.976Z","etag":null,"topics":["agent","ai-document-generator","aigne","documentation","gemini","openai"],"latest_commit_sha":null,"homepage":"https://www.aigne.io/doc-smith","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AIGNE-io.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-29T06:45:38.000Z","updated_at":"2025-09-24T09:05:37.000Z","dependencies_parsed_at":"2025-09-17T02:31:06.854Z","dependency_job_id":"1286f969-bf83-431e-9e81-7ca036dc9d53","html_url":"https://github.com/AIGNE-io/aigne-doc-smith","commit_stats":null,"previous_names":["aigne-io/aigne-doc-smith"],"tags_count":52,"template":false,"template_full_name":null,"purl":"pkg:github/AIGNE-io/aigne-doc-smith","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AIGNE-io%2Faigne-doc-smith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AIGNE-io%2Faigne-doc-smith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AIGNE-io%2Faigne-doc-smith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AIGNE-io%2Faigne-doc-smith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AIGNE-io","download_url":"https://codeload.github.com/AIGNE-io/aigne-doc-smith/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AIGNE-io%2Faigne-doc-smith/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277746985,"owners_count":25870067,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-30T02:00:09.208Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent","ai-document-generator","aigne","documentation","gemini","openai"],"created_at":"2025-09-30T20:01:34.005Z","updated_at":"2026-03-11T17:01:57.385Z","avatar_url":"https://github.com/AIGNE-io.png","language":"JavaScript","funding_links":[],"categories":["NLP"],"sub_categories":[],"readme":"# DocSmith\n\nAI-powered documentation generation tool built on the Aigne Framework.\n\n[中文文档](./README.zh.md)\n\n## Features\n\nDocSmith is a complete documentation generation system that provides:\n- 📚 Generate comprehensive documentation from code repositories, text files, and media resources\n- 🏗️ Build organized documentation structures and documentation sites\n- 📝 Intelligently analyze workspace content and generate structured documentation\n- 🔄 Convert code/project content into readable documentation\n- 🌍 Multi-language support and documentation localization\n- 🖼️ Automatic generation and updating of documentation images\n- 📤 One-click publishing to multiple platforms\n\nSupports generating:\n- Technical documentation\n- User guides\n- API references\n- Tutorials and examples\n- Product documentation\n\n### User Intent Analysis\n\nDocSmith automatically analyzes workspace content to infer:\n- **Target audience** - Primary readers of the documentation (developers, operators, end users, etc.)\n- **Use cases** - Context in which users consult the documentation (first contact, development integration, troubleshooting, etc.)\n- **Documentation focus** - Documentation type (user guide, API reference, quick start, architecture overview, etc.)\n\nInference results are presented to users for confirmation, with support for multiple rounds of adjustments until satisfied.\n\n### Structure Confirmation Mechanism\n\nBefore generating documentation, DocSmith displays the planned documentation structure:\n- Total number of documents and hierarchy\n- Title, description, and source files for each document\n- Clear emoji indicators for quick browsing\n\nUsers can:\n- Delete/add documents\n- Adjust hierarchy (merge, split, adjust parent-child relationships)\n- Modify content scope\n\nActual content generation begins only after user confirms the structure.\n\n## Project Structure\n\n```\naigne-doc-smith/\n├── aigne.yaml                # Aigne framework configuration\n├── package.json              # Project dependencies and metadata\n├── CLAUDE.md                 # Claude Code project description\n├── README.md                 # This file\n│\n├── agents/                   # Specialized Agents\n│   ├── bash-executor/        # Bash command execution agent\n│   ├── clear/                # Configuration cleanup agent\n│   ├── content-checker/      # Content checking agent\n│   ├── generate-images/      # Image generation agent\n│   ├── localize/             # Documentation localization agent\n│   ├── publish/              # Documentation publishing agent\n│   ├── save-document/        # Document saving agent\n│   ├── structure-checker/    # Structure checking agent\n│   └── update-image/         # Image update agent\n│\n├── skills/                   # Skill definitions\n│   └── doc-smith/            # DocSmith Skill\n│       ├── SKILL.md          # Skill main document\n│       └── references/       # Reference documents\n│\n├── skills-entry/             # Aigne framework entry configuration\n│   └── doc-smith/\n│       ├── index.yaml        # Main entry configuration\n│       └── prompt.md         # Prompt template\n│\n├── utils/                    # Utility library\n│   ├── config.mjs            # Configuration management\n│   ├── docs.mjs              # Document processing\n│   ├── git.mjs               # Git operations\n│   ├── image-utils.mjs       # Image utilities\n│   ├── workspace.mjs         # Workspace management\n│   └── ...                   # More utilities\n│\n└── scripts/                  # Helper scripts\n    └── ...\n```\n\n## Quick Start\n\n### 1. Install Aigne CLI\n\n```bash\nnpm install -g @aigne/cli\n```\n\n### 2. Start DocSmith\n\nRun directly in your project root:\n\n```bash\ncd my-project\naigne doc\n```\n\nOn first execution, Aigne CLI will automatically install DocSmith and start the interactive documentation generation process.\n\n**Automatic Initialization:**\n\nDocSmith will automatically:\n- Detect the current project\n- Create workspace in `.aigne/doc-smith/` directory\n- Generate config.yaml configuration file\n\n**Completed During Conversation:**\n\nDocSmith will guide you through:\n1. Ask for output language (if not specified)\n2. Analyze project content\n3. Infer user intent\n4. Plan documentation structure\n5. Generate structured Markdown documentation\n\n### 3. Generated Directory Structure\n\n```\nmy-project/\n├── .aigne/\n│   └── doc-smith/              # DocSmith workspace\n│       ├── config.yaml         # Configuration file\n│       ├── intent/             # User intent\n│       ├── planning/           # Documentation structure planning\n│       ├── docs/               # Generated documentation\n│       │   ├── overview.md\n│       │   ├── getting-started.md\n│       │   └── api/\n│       │       └── authentication.md\n│       └── cache/              # Temporary data\n└── (other project files...)\n```\n\n### 4. Independent Workspace Mode (Optional)\n\nTo separate documentation project from source code, use independent workspace:\n\n```bash\n# Create independent workspace\nmkdir my-docs\ncd my-docs\naigne doc\n```\n\nIndependent mode supports multiple data source configuration:\n\n```yaml\n# config.yaml\nsources:\n  - name: \"main\"\n    type: local-path\n    path: \"../my-project\"\n\n  - name: \"other-repo\"\n    type: git-clone\n    url: \"https://github.com/example/repo.git\"\n    branch: \"main\"\n```\n\n## Core Features\n\n### Documentation Generation\n- Intelligent analysis of source code and project structure\n- Automatic inference of user intent and target audience\n- Generation of structured Markdown documentation\n- Support for documentation hierarchy planning and confirmation\n\n### Image Management\n- Automatic generation of documentation images\n- Image placeholder system support\n- Batch update and edit images\n- Multiple image generation model support\n\n### Multi-language Support\n- Documentation localization and translation\n- Multi-language documentation structure management\n- Automatic synchronization of different language versions\n\n### Publishing and Deployment\n- One-click publishing to multiple platforms\n- Custom publishing configuration support\n- Documentation site building and deployment\n\n## Development\n\n### Install Dependencies\n\n```bash\npnpm install\n```\n\n### Code Quality\n\nProject uses Biome for code linting and formatting:\n\n```bash\n# Check code\npnpm run lint\n\n# Auto fix\npnpm run lint:fix\n```\n\n### Modifying Agents\n\nTo add or modify agents:\n\n1. Create or modify agent in `agents/` directory\n2. Register new agent in `aigne.yaml`\n3. Write agent prompts and configuration files\n\n### Modifying Utility Functions\n\nTo extend or optimize utility functions:\n\n1. Add or modify utility functions in `utils/` directory\n2. Ensure ES module syntax (`.mjs` files)\n3. Import and use where needed\n\n## Tech Stack\n\n- **Aigne Framework** - AI agent orchestration framework\n- **Node.js** - Runtime environment (ES modules)\n- **pnpm** - Package manager\n- **Biome** - Code linting and formatting\n- **YAML** - Configuration and data format\n\n## Notes\n\n- Ensure Node.js (v18+) and pnpm are installed\n- Ensure Git is installed (for submodule and version management)\n- Anthropic API key or other LLM provider configuration required\n- Image generation features require corresponding API key configuration\n\n## Migration Guide\n\nIf you previously used an older version (`.aigne/doc-smith/` directory structure), we recommend:\n1. Create a new workspace directory\n2. Regenerate documentation\n3. Old version data can be manually migrated to the new workspace directory structure\n\n## Version\n\nCurrent version: `0.9.11`\n\n## Support\n\nFor issues or suggestions, please open an issue in the project.\n\n## Author\n\n**Arcblock** - [blocklet@arcblock.io](mailto:blocklet@arcblock.io)\n\nGitHub: [@blocklet](https://github.com/blocklet)\n\n## License\n\nElastic-2.0 License\n\n## Related Links\n\n- [Aigne Framework](https://www.npmjs.com/package/@aigne/cli)\n- [Arcblock](https://www.arcblock.io/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faigne-io%2Faigne-doc-smith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faigne-io%2Faigne-doc-smith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faigne-io%2Faigne-doc-smith/lists"}