Update CLAUDE.md and AGENTS.md to reflect current codebase
- Add missing CLI subcommands (ui, docs, check, providers, deps, install, lock, verify, add, remove, init, config) - Document new core modules (config.py, system_deps.py, dependency_graph.py, hash_utils.py) - Update GUI structure (Welcome page, widgets/, expanded dialogs list) - Add missing web modules (auth.py, sessions.py, email.py, seo.py) - Add missing registry modules (categorize.py, rate_limit.py, scrutiny.py, similarity.py, stats.py, settings.py) - Streamline AGENTS.md as quick reference that defers to CLAUDE.md Co-Authored-By: Claude Opus 4.5 <[email protected]>
This commit is contained in:
@@ -39,7 +39,7 @@ python -m cmdforge.cli # Alternative CLI invocation
|
||||
|
||||
### Core Modules (`src/cmdforge/`)
|
||||
|
||||
- **cli/**: CLI commands entry points (`cmdforge` command). Routes subcommands: list, create, edit, delete, test, run, refresh, collections, registry, settings, system-deps
|
||||
- **cli/**: CLI commands entry points (`cmdforge` command). Routes subcommands: list, create, edit, delete, test, run, ui, docs, check, refresh, providers, registry, collections, deps, install, lock, verify, add, remove, init, config, settings, system-deps
|
||||
- **tool.py**: Tool definition dataclasses (`Tool`, `ToolArgument`, `PromptStep`, `CodeStep`, `ToolStep`), YAML config loading/saving, wrapper script generation
|
||||
- **runner.py**: Execution engine. Runs tool steps sequentially, handles variable substitution (`{input}`, `{varname}`), executes Python code steps via `exec()`, handles nested tool calls with depth limit (MAX_TOOL_DEPTH=10)
|
||||
- **resolver.py**: Tool resolution. `resolve_tool()` searches: project manifest → local tools → owner/name → registry. Returns `ResolvedTool` with path info
|
||||
@@ -49,10 +49,15 @@ python -m cmdforge.cli # Alternative CLI invocation
|
||||
- **manifest.py**: Project manifest (`cmdforge.yaml`) for declaring tool dependencies with version constraints
|
||||
- **lockfile.py**: Lock file support for reproducible installs (`cmdforge.lock`)
|
||||
- **registry_client.py**: Client for registry API (search, publish, download, authentication)
|
||||
- **config.py**: Global configuration management (registry URL, auth tokens)
|
||||
- **system_deps.py**: System package dependency management (apt/dnf/pacman detection and installation)
|
||||
- **dependency_graph.py**: Dependency graph resolution for meta-tools
|
||||
- **hash_utils.py**: Hash verification utilities for tool integrity
|
||||
- **gui/**: PySide6 desktop GUI
|
||||
- **main_window.py**: Main application window with sidebar navigation
|
||||
- **pages/**: Tools page, Tool Builder, Registry browser, Collections page, Providers management, Profiles
|
||||
- **dialogs/**: Step editors, Argument editor, Provider dialog, Connect/Publish dialogs
|
||||
- **pages/**: Welcome page, Tools page, Tool Builder, Registry browser, Collections page, Providers management, Profiles
|
||||
- **dialogs/**: Step editors (prompt/code/tool), Argument editor, Provider dialog, Connect/Publish dialogs, Test Step dialog, Settings dialog, System Dep dialog, Help dialogs, Review/Issue dialogs
|
||||
- **widgets/**: Flow graph visualization (`flow_graph.py`), Icon utilities (`icons.py`)
|
||||
|
||||
### Key Paths
|
||||
|
||||
@@ -113,11 +118,15 @@ CmdForge includes a web interface and tool registry:
|
||||
|
||||
- **app.py**: Flask app factory, registers blueprints
|
||||
- **routes.py**: Main web routes (docs, tutorials, tools, etc.)
|
||||
- **auth.py**: Authentication middleware and decorators
|
||||
- **sessions.py**: Session management
|
||||
- **email.py**: Email utilities (password reset, notifications)
|
||||
- **seo.py**: SEO utilities (sitemap, meta tags)
|
||||
- **filters.py**: Jinja2 filters (timeago, markdown, etc.)
|
||||
- **docs_content.py**: Documentation and tutorial content
|
||||
- **forum/**: Community forum blueprint
|
||||
- **models.py**: Forum database schema (categories, topics, replies)
|
||||
- **routes.py**: Forum routes (/forum, /forum/c/<slug>, /forum/t/<id>)
|
||||
- **filters.py**: Jinja2 filters (timeago, markdown, etc.)
|
||||
- **docs_content.py**: Documentation and tutorial content
|
||||
|
||||
### Registry Modules (`src/cmdforge/registry/`)
|
||||
|
||||
@@ -125,6 +134,12 @@ CmdForge includes a web interface and tool registry:
|
||||
- **db.py**: SQLite schema and queries (`connect_db()`, `query_one()`, `query_all()`)
|
||||
- **embeddings.py**: Semantic search with vector embeddings for tool discovery
|
||||
- **sync.py**: Git-based tool sync from Gitea repository
|
||||
- **categorize.py**: Auto-categorization of tools based on content
|
||||
- **rate_limit.py**: Rate limiting for API endpoints
|
||||
- **scrutiny.py**: Tool vetting (honesty, transparency, scope, efficiency checks)
|
||||
- **similarity.py**: Duplicate detection via embedding similarity
|
||||
- **stats.py**: Registry statistics and metrics
|
||||
- **settings.py**: Server-side settings management
|
||||
|
||||
### Key URLs
|
||||
|
||||
|
||||
Reference in New Issue
Block a user