terraphim / terraphim/terraphim-ai
Phase 4: Nightly extraction -- automated workflow crystallisation via ADF
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 62
- Forks
- 5
- Avg merge
- 2h 27m
- Merged PRs (30d)
- 1
Description
Parent Epic
Part of #692 (Operational Skill Store)
Summary
Add a new Core-tier ADF agent that runs nightly to automatically discover and crystallise successful multi-step workflows from session history into reusable procedures. This closes the loop -- instead of manual capture-success, the system learns from its own history.
What Changes
New ADF agent: procedure-crystalliser
Tier: Core (cron-scheduled, runs nightly)
CLI: terraphim-agent (uses sessions + learn subcommands)
Nightly workflow:
terraphim-agent sessions import-- refresh session cache- Scan recent sessions for successful multi-step sequences (exit code 0 chains)
- Classify sequences by task type using KG concept matching
- Deduplicate against existing procedures (Aho-Corasick)
- Store novel sequences as new
CapturedProcedureentries - Run
learn healthacross all procedures - Generate daily report: new procedures, degraded procedures, statistics
Orchestrator config addition
[[agents]]
name = "procedure-crystalliser"
tier = "Core"
cli = "terraphim-agent"
schedule = "0 2 * * *" # 02:00 daily
working_dir = "/home/alex/terraphim-ai"
Session extraction API in terraphim_sessions
pub async fn extract_successful_sequences(
since: DateTime<Utc>,
min_steps: usize,
) -> Vec<CommandSequence>;
Affected Crates
terraphim_orchestrator(new agent config)terraphim_sessions(extraction API)terraphim_agent(orchestration entry point)
Dependencies
- Phase 1 (#693) -- CapturedProcedure type
- Phase 3 (#695) -- health monitoring
- #637 Paperclip leverage into ADF (orchestrator infrastructure)
- #639 Session persistence for Claude Code agents
- #683 Tree-structured session storage
Acceptance Criteria
-
procedure-crystalliseragent defined in orchestrator config - Session extraction API returns successful command sequences
- KG-based task type classification for discovered sequences
- Aho-Corasick deduplication prevents storing known procedures
- Daily report generated with new/degraded procedure counts
- Integration test with sample session data
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing structures in terraphim_orchestrator, terraphim_sessions, and terraphim_agent, then trace the sessions and learn subcommands used by the nightly workflow. Implement the procedure-crystalliser configuration, successful-sequence extraction, classification, deduplication, health checks, and daily report, and validate the result with integration tests using sample session data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- ai, backend, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100