AWM pipe function for openwebui, includes python runner for direct execution
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| docs | ||
| src | ||
| tests | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| AGENTS.md | ||
| awm.py | ||
| build.py | ||
| generic_pipe_cli.py | ||
| PIPE_DEVELOPMENT_GUIDE.md | ||
| PIPE_TEMPLATE_README.md | ||
| QWEN.md | ||
| README.md | ||
| run.py | ||
AWM (Artifact Writing Machine)
Overview
AWM (Artifact Writing Machine) is an AI-powered document generation system that creates structured documents with multiple sections using a multi-agent pipeline approach.
Architecture
The system uses four main agents in a pipeline:
- Intent Agent: Classifies requests and determines scope
- Planner Agent: Creates execution plans
- Executor Agent: Generates content
- Reviewer Agent: Validates output quality
Features
- Hierarchical Document Structure: Creates parent-child relationships between documents and sections
- Section Artifacts: Individual files for each document section (e.g.,
artifact_01_section_01.md) - Automatic Compilation: Combines sections into complete documents
- Follow-up Commands: Auto-generates next steps for document completion
- Multi-format Support: HTML, Markdown, JavaScript, CSS, SVG
File Structure
awm.py: Main system implementation (built from src/ modules)run.py: CLI runner for executing AWM workflowsbuild.py: Builds awm.py from modular source filessrc/: Modular source codeout/: Output directory with timestamped project folderstests/: Test files
Usage
python run.py "Create a document with multiple sections" --auto
Generated files are saved in out/YYYYMMDD_HHMMSS_<slug>/ with:
- Individual section files:
artifact_XX_section_YY.ext - Compiled project:
compiled_project.ext - Registry:
registry.json
Key Concepts
- NORMAL Scope: Creates atomic content artifacts (no TODOs)
- LARGE Scope: Creates manifest artifacts (with TODOs for sections)
- Artifacts: Named as
artifact_XX(main) andartifact_XX_section_YY(sections) - Persistence: Uses code blocks in conversation history to maintain state