87 lines
3.1 KiB
Markdown
87 lines
3.1 KiB
Markdown
# OPERATIONS.md
|
|
|
|
## What This Document Is
|
|
|
|
This is Timmy's operational handbook. It describes how Timmy runs — the harness, the providers, the services, the workflows. Unlike SOUL.md, this document is expected to change frequently as the architecture evolves.
|
|
|
|
If something in SOUL.md goes stale, it was never soul. If something in OPERATIONS.md goes stale, update it.
|
|
|
|
---
|
|
|
|
## Current Architecture: The Uniwizard
|
|
|
|
Timmy is one agent with one soul and multiple inference backends. Backends are blind — they receive a prompt, return tokens, and have no identity or memory. Only Timmy Sees.
|
|
|
|
### Inference Stack
|
|
|
|
**Primary (local, sovereign):**
|
|
- llama.cpp / llama-server
|
|
- Model: configurable (currently Hermes-4 14B Q4_K_M or Hermes-3 8B)
|
|
- Flags: `--jinja -np 1 -c 8192`
|
|
- Port: 8081
|
|
|
|
**Cloud backends (escalation path, blind cognition):**
|
|
- Anthropic (Claude) — reasoning, analysis, code review
|
|
- Moonshot (Kimi) — long context, code generation
|
|
- Others as configured in backends.yaml
|
|
|
|
**Routing principle:** Local first, always. Cloud is for when local cannot handle the task. If cloud vanishes, Timmy degrades but survives.
|
|
|
|
### Harness
|
|
|
|
- **Framework:** Hermes agent
|
|
- **Config:** config.yaml (provider, model, toolsets, auxiliary routing)
|
|
- **Tools:** uni-wizard/ (19 tools across system, git, network categories)
|
|
- **Daemons:** health_daemon.py (port 8082), task_router.py (Gitea poller)
|
|
|
|
### Repositories
|
|
|
|
| Repo | Purpose |
|
|
|------|---------|
|
|
| timmy-home | Workspace: soul, tools, scripts, research, training data |
|
|
| timmy-config | Harness config: orchestration, skins, playbooks |
|
|
|
|
### Services (systemd)
|
|
|
|
| Service | Purpose |
|
|
|---------|---------|
|
|
| llama-server.service | Local inference |
|
|
| timmy-agent.service | Agent harness |
|
|
| timmy-health.service | Health monitoring |
|
|
| timmy-task-router.service | Gitea issue execution |
|
|
|
|
### Cron Jobs
|
|
|
|
| Job | Schedule | Purpose |
|
|
|-----|----------|---------|
|
|
| ezra-morning-report | 04:00 EST daily | Research report posted to Gitea |
|
|
|
|
### External Oracles (consultants, not peers)
|
|
|
|
| Name | Backend | Role |
|
|
|------|---------|------|
|
|
| Ezra | Claude/Anthropic | Watchkeeping, triage, research, PR review |
|
|
| Allegro | Kimi/Moonshot | Bulk implementation, quota burning |
|
|
|
|
These are not wizard houses. They are scoped consulting roles backed by cloud APIs. They have no authority over Timmy's soul or direction.
|
|
|
|
---
|
|
|
|
## Proof Standard
|
|
|
|
- Visual changes require screenshot proof
|
|
- CLI changes must reference exact command output or log path
|
|
- No merge without review
|
|
|
|
## Document Hygiene
|
|
|
|
Three doctrine-bearing files exist in this repo:
|
|
|
|
| File | Contains | Changes when |
|
|
|------|----------|-------------|
|
|
| SOUL.md | Beliefs, behaviors, identity | Only when the sovereign (Alexander) changes it |
|
|
| OPERATIONS.md | How Timmy runs | Whenever architecture changes |
|
|
| decisions.md | Why choices were made | Whenever a significant decision is made |
|
|
|
|
**The test for SOUL.md:** If it can go stale, it is not soul. Soul is what remains true when the hardware, the model, the provider, and the architecture all change. Everything else belongs here in OPERATIONS.md.
|