Files
TSYS-AIOS-GIS/AGENTS.md

118 lines
4.5 KiB
Markdown

# AIOS-Public Agents
This document tracks the various agents, tools, and systems used in the AIOS-Public project.
## Documentation Tools
### RCEO-AIOS-Public-Tools-DocMaker Container Family
**Purpose**: Documentation generation containers with multiple document conversion tools, organized in a layered architecture.
**Container/Stack Names**:
- RCEO-AIOS-Public-Tools-DocMaker-Base: Base documentation environment
- RCEO-AIOS-Public-Tools-DocMaker-Light: Lightweight documentation tools (fast-starting)
- RCEO-AIOS-Public-Tools-DocMaker-Full: Full documentation with LaTeX-full
- RCEO-AIOS-Public-Tools-DocMaker-Computational: All documentation tools plus computational tools (R, Python, Jupyter, Octave)
**Technology Stack**:
- Base: Debian Bookworm slim
- Bash
- Python 3
- Node.js
- Rust (with Cargo)
- Pandoc
- LaTeX (varies by container: light packages in base/full in full)
- mdBook (installed via Cargo)
- mdbook-pdf (installed via Cargo)
- Typst
- Marp CLI
- Wandmalfarbe pandoc-latex-template: Beautiful Eisvogel LaTeX template for professional PDF generation
- Spell/Grammar checking:
- Hunspell (with en-US dictionary)
- Aspell (with en dictionary)
- Vale (style and grammar linter)
- Reading time estimation: mdstat
- Additional text processing tools
- Computational tools in Computational container:
- R programming language
- Python scientific stack (pandas, numpy, matplotlib, scipy)
- Jupyter notebooks
- GNU Octave
- bc (command-line calculator)
**Usage**:
- Use Light container for quick documentation tasks (COO mode)
- Use Full container for complex document generation (COO mode)
- Use Computational container for data analysis and R&D work (CTO mode)
- Base container serves as foundation for other containers
**Docker Configuration**:
- Located in the `Docker/` directory
- Each container has its own subdirectory with Dockerfile and docker-compose.yml
- Maps the project root directory to `/workspace` inside the container
- Uses UID/GID mapping for proper file permissions across environments
- Can be run with `docker-compose up` from each container's directory
**Container Usage Map**:
- Light container: COO mode, quick documentation tasks (CV, proposals, governance docs)
- Full container: COO mode, complex document generation with LaTeX-full
- Computational container: CTO mode, data analysis and R&D work (R, Python, Jupyter)
**Commands to run**:
# Using the wrapper script (recommended - handles UID/GID automatically):
```bash
# Build and start the lightweight container (COO mode)
cd Docker/RCEO-AIOS-Public-Tools-DocMaker-Light
./docker-compose-wrapper.sh up --build
# Build and start the full documentation container (COO mode)
cd Docker/RCEO-AIOS-Public-Tools-DocMaker-Full
./docker-compose-wrapper.sh up --build
# Build and start the computational container (CTO mode)
cd Docker/RCEO-AIOS-Public-Tools-DocMaker-Computational
./docker-compose-wrapper.sh up --build
# Run commands in containers with automatic user mapping:
./docker-compose-wrapper.sh run docmaker-light [command] # Light container
./docker-compose-wrapper.sh run docmaker-full [command] # Full container
./docker-compose-wrapper.sh run docmaker-computational [command] # Computational container
```
# Using docker-compose directly (requires manual environment variables):
```bash
# Set environment variables for proper file permissions
export LOCAL_USER_ID=$(id -u)
export LOCAL_GROUP_ID=$(id -g)
# Build and start containers
cd Docker/RCEO-AIOS-Public-Tools-DocMaker-Light
docker-compose up --build
# Example usage of documentation tools with wrapper script:
# Spell checking with hunspell
./docker-compose-wrapper.sh run docmaker-full hunspell -d en_US document.md
# Create timeline with Markwhen (not currently available)
# This will be enabled when Markwhen installation issue is resolved
# ./docker-compose-wrapper.sh run docmaker-full markwhen input.mw --output output.html
# Grammar/style checking with Vale
./docker-compose-wrapper.sh run docmaker-full vale document.md
# Reading time estimation
./docker-compose-wrapper.sh run docmaker-full python3 -m mdstat document.md
# Run R analysis (in computational container)
./docker-compose-wrapper.sh run docmaker-computational Rscript analysis.R
# Run Python analysis (in computational container)
./docker-compose-wrapper.sh run docmaker-computational python analysis.py
# Check spelling with aspell
./docker-compose-wrapper.sh run docmaker-full aspell -c document.md
```
**User Management**: All containers run as non-root user `ReachableCEO-Tools` with UID/GID mapping from the host environment to ensure proper file permissions.