Skip to content

SwekeR-463/docdescend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DocDescend

DocDescend is a focused CLI tool designed for "local documentation descent." Instead of crawling entire sites, it helps developers deeply understand a single documentation page on demand.

Features

  • Focused Analysis: Fetches and parses only the specific page you're reading.
  • Targeted Explanations: Explains only what is missing or unclear to you.
  • Minimal Snippets: Generates correct, copy-pasteable code snippets based on the page context.
  • High-Speed Inference: Powered by Cerebras for near-instant responses.
  • Swappable Backends: Supports Cerebras (default) and OpenRouter.

Architecture

graph TD
    User([User]) --> CLI[CLI / UI]
    CLI --> Fetcher[Docs Fetcher & Parser]
    Fetcher --> Runner[Descend Runner]
    Runner --> Explain[Explain Agent]
    Runner --> Snippet[Snippet Agent]
    Explain --> LLM[LLM Backend - Cerebras/OpenRouter]
    Snippet --> LLM
    LLM --> Explain
    LLM --> Snippet
    Explain --> Runner
    Snippet --> Runner
    Runner --> CLI
    CLI --> User
Loading

Project Structure

docdescend/
├── cli/            # Main CLI entry point
├── llm/            # LLM backend abstractions (Cerebras, OpenRouter)
├── docs/           # URL fetching and HTML parsing
├── descend/        # Core coordination logic
├── agents/         # Specialized agents (Explain, Snippet)
├── prompts/        # System prompts for agents
├── models/         # Data structures (Page, Response)
├── ui/             # Rich terminal interface components
├── .env            # API keys and configuration
└── requirements.txt

Setup

  1. Clone and Navigate:

    cd docdescend
  2. Install Dependencies:

    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
  3. Configure API Keys: Copy .env.example to .env and add your keys:

    cp .env.example .env
    # Edit .env with your CEREBRAS_API_KEY

Usage

Run the CLI from the project root:

python3 main.py

Workflow:

  1. Paste URL: Enter the documentation URL you are currently reading.
  2. Ask: Type what you find confusing or ask for a specific example.
  3. Descend: Receive a targeted explanation and code snippet.
  4. Commands:
    • :new - Load a different URL.
    • exit or quit - Exit the program.

Built with Python, Rich, Cerebras and OpenCode Web.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages