Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
294 commits
Select commit Hold shift + click to select a range
0554066
feat(03-02): implement Discord adapter with Gateway infrastructure
initcron Feb 13, 2026
dac6b43
fix(03-02): fix Discord test assertion
initcron Feb 13, 2026
cf5b768
feat(03-02): implement Telegram adapter with long polling infrastructure
initcron Feb 13, 2026
a565190
feat(03-02): add retry logic with exponential backoff for 429 errors
initcron Feb 13, 2026
1f0ea80
fix(03-02): fix retry tests with atomic counters for closure capture
initcron Feb 13, 2026
41e716f
fix(03-02): fix retry delay calculation (default to 1 sec, not 60)
initcron Feb 13, 2026
d4dd539
fix(03-02): trim whitespace in Retry-After extraction
initcron Feb 13, 2026
52d2278
docs(03-02): complete 03-02-PLAN execution summary and update STATE
initcron Feb 13, 2026
0937467
feat(03-03): add squad configuration schema
initcron Feb 13, 2026
e8c4185
feat(03-03): implement squad broadcast logic
initcron Feb 13, 2026
2fa8eb0
docs(03-03): add comprehensive YAML configuration schema
initcron Feb 13, 2026
d53778f
feat(03-03): implement enhanced secrets management
initcron Feb 14, 2026
a059787
feat(03-03): integrate gateway with aofctl serve
initcron Feb 14, 2026
228123f
test(03-03): add integration tests for config and squad broadcast
initcron Feb 14, 2026
99d6c67
docs(03-03): add gateway troubleshooting guide
initcron Feb 14, 2026
2b8926d
docs(03-03): complete 03-03-PLAN execution summary and update STATE
initcron Feb 14, 2026
a595a58
feat(04-01): create React + Vite project structure with builder.io setup
initcron Feb 14, 2026
c90680d
feat(04-01): set up Redux store with eventsSlice and configSlice
initcron Feb 14, 2026
767859d
feat(04-01): create useWebSocket hook with automatic reconnection
initcron Feb 14, 2026
4932bf4
feat(04-01): add configuration API client hooks
initcron Feb 14, 2026
0e8947c
feat(04-01): add Tailwind CSS and shadcn/ui component setup
initcron Feb 14, 2026
de6b273
feat(04-01): configure Vite proxy and CORS for localhost development
initcron Feb 14, 2026
0e66ee6
feat(04-01): TypeScript types for Phase 1 CoordinationEvent completed
initcron Feb 14, 2026
cd56b85
feat(04-01): create App.tsx with WebSocket subscription and Redux int…
initcron Feb 14, 2026
84ff2e7
feat(04-01): implement Vite build optimization and production configu…
initcron Feb 14, 2026
869d88e
feat(04-01): add developer documentation and setup instructions
initcron Feb 14, 2026
04b1450
docs(04-01): complete 04-01-PLAN execution summary and update STATE
initcron Feb 14, 2026
986256d
chore(04-mission-control-ui): install and configure dnd-kit library
initcron Feb 14, 2026
7127142
feat(04-mission-control-ui): add tasksSlice with optimistic updates a…
initcron Feb 14, 2026
547a079
feat(04-mission-control-ui): create useTaskManagement hook for API in…
initcron Feb 14, 2026
2c04685
feat(04-mission-control-ui): create AgentCard component with dynamic …
initcron Feb 14, 2026
f801ac0
feat(04-mission-control-ui): create AgentGrid component with config p…
initcron Feb 14, 2026
446b7b1
feat(04-mission-control-ui): create TaskCard component with drag handle
initcron Feb 14, 2026
33dbdda
feat(04-mission-control-ui): create Lane component with drop zone
initcron Feb 14, 2026
3d185cb
feat(04-mission-control-ui): implement KanbanBoard with drag-and-drop
initcron Feb 14, 2026
c81f652
test(04-mission-control-ui): implement version-based conflict resolut…
initcron Feb 14, 2026
b1601d8
feat(04-mission-control-ui): add comprehensive accessibility features
initcron Feb 14, 2026
81a3a34
feat(04-mission-control-ui): add visual feedback, animations, and loa…
initcron Feb 14, 2026
1fb4cde
test(04-mission-control-ui): create integration tests and component d…
initcron Feb 14, 2026
08e74e0
docs(04-mission-control-ui): complete 04-02-PLAN execution summary
initcron Feb 14, 2026
45ddffc
feat(04-mission-control-ui): create chatSlice with message deduplication
initcron Feb 14, 2026
ed7699b
feat(04-mission-control-ui): add config API module with YAML parsing
initcron Feb 14, 2026
5e85125
feat(04-mission-control-ui): create ChatMessage and SquadChat components
initcron Feb 14, 2026
2c1a31f
feat(04-mission-control-ui): create activitiesSlice for event timeline
initcron Feb 14, 2026
d407479
feat(04-mission-control-ui): create ActivityFeed with collapsible items
initcron Feb 14, 2026
578c8ff
feat(04-mission-control-ui): create TaskDetail modal component
initcron Feb 14, 2026
6d46d50
feat(04-mission-control-ui): create TaskTimeline for History tab
initcron Feb 14, 2026
c752fc5
feat(04-mission-control-ui): add config API routes infrastructure
initcron Feb 14, 2026
38034ab
feat(04-mission-control-ui): create Comments section for TaskDetail
initcron Feb 14, 2026
5a3789b
feat(04-mission-control-ui): integrate SquadChat and ActivityFeed int…
initcron Feb 14, 2026
e7df3d9
feat(04-mission-control-ui): add timestamp formatting with date-fns
initcron Feb 14, 2026
f707811
feat(04-mission-control-ui): document message deduplication and recon…
initcron Feb 14, 2026
719c1ac
feat(04-mission-control-ui): add integration tests and accessibility …
initcron Feb 14, 2026
dffe239
docs(04-mission-control-ui): complete 04-03-PLAN execution summary an…
initcron Feb 14, 2026
6513e27
feat(04-04): integrate config API routes into serve.rs custom Axum app
initcron Feb 14, 2026
2af2178
feat(04-04): create AGENTS.md and TOOLS.md template files
initcron Feb 14, 2026
4eebaad
docs(04-04): create comprehensive production deployment guide
initcron Feb 14, 2026
0704fc1
fix(04-04): remove root route handler to enable static file serving at /
initcron Feb 14, 2026
e3d8378
docs(04-04): complete Phase 4 Plan 04 execution summary and update STATE
initcron Feb 14, 2026
3e39d0e
docs(05-agent-personas): create comprehensive phase 5 plans and updat…
initcron Feb 14, 2026
bcd69fa
feat(05-01): create aof-personas crate with workspace types, loader, …
initcron Feb 14, 2026
0bc30af
feat(05-01): define Agent, Soul, SoulFrontmatter types with serde der…
initcron Feb 14, 2026
3eaf77b
feat(05-01): add AGENTS.md and SOUL.md workspace fixture files with 3…
initcron Feb 14, 2026
58dbc23
test(05-01): add 17 comprehensive integration tests for persona loadi…
initcron Feb 14, 2026
e7914a7
docs(05-01): add persona system concept docs and internal developer d…
initcron Feb 14, 2026
7ba59d3
docs(05-01): complete workspace file format & loaders plan summary an…
initcron Feb 14, 2026
5daa28c
feat(05-04): extend Agent type with persona fields and introduction e…
initcron Feb 14, 2026
bece654
feat(05-03): add AgentIntroduction type to CoordinationEvent
initcron Feb 14, 2026
9136c72
feat(05-04): create PersonalityTraits component with colored trait ba…
initcron Feb 14, 2026
272dba1
feat(05-02): create PromptComposer with 7-layer instruction composition
initcron Feb 14, 2026
ae357a5
feat(05-04): create CapabilityBoundaries expandable CAN/CANNOT component
initcron Feb 14, 2026
7906009
feat(05-03): create introduction event builder in aof-personas
initcron Feb 14, 2026
260f0df
feat(05-02): add token counting and graceful truncation with tests
initcron Feb 14, 2026
22f74db
feat(05-04): redesign AgentCard layout with persona-first visual hier…
initcron Feb 14, 2026
1c38921
feat(05-02): add prompt caching with SHA256 invalidation and tests
initcron Feb 14, 2026
f229449
feat(05-04): add introduction message toast notifications
initcron Feb 14, 2026
5696a74
feat(05-03): integrate introduction event emission into aofctl serve
initcron Feb 14, 2026
81a07de
feat(05-02): implement tool reference linking with tests
initcron Feb 14, 2026
0b52e87
feat(05-04): update AgentGrid responsive layout and skeleton
initcron Feb 14, 2026
b360ff7
feat(05-02): add security validation and injection detection tests
initcron Feb 14, 2026
bd166f7
feat(05-03): add introduction events to Redux store and IntroductionCard
initcron Feb 14, 2026
cd0578c
test(05-04): add 22 component tests and persona UI documentation
initcron Feb 14, 2026
f71c8a4
test(05-02): add 18 comprehensive composition tests with reference ag…
initcron Feb 14, 2026
e77778a
feat(05-03): wire introduction events to messaging gateway
initcron Feb 14, 2026
22e20d3
feat(05-03): add squad-specific introduction customization via squads…
initcron Feb 14, 2026
12e8fd0
feat(05-02): integrate PromptComposer into AgentExecutor
initcron Feb 14, 2026
0104106
docs(05-04): complete AgentCard Persona Display plan execution summar…
initcron Feb 14, 2026
6e18402
test(05-02): add end-to-end integration test for prompt composition w…
initcron Feb 14, 2026
001edd5
test(05-03): add 11 comprehensive introduction event tests
initcron Feb 14, 2026
ac1ebeb
docs(05-02): add developer documentation and composed prompt examples
initcron Feb 14, 2026
2a26dda
docs(05-03): complete introduction events plan execution summary and …
initcron Feb 14, 2026
1fe32a8
docs(05-02): complete system-prompt-composition plan execution summar…
initcron Feb 14, 2026
da674c3
feat(05-05): implement reliability metrics computation logic
initcron Feb 14, 2026
820adac
feat(05-05): expose /api/agents/:id/metrics HTTP endpoint
initcron Feb 14, 2026
d37d9f5
feat(05-05): create useAgentMetrics hook for polling metrics
initcron Feb 14, 2026
f85889f
feat(05-05): integrate live metrics display into AgentCard
initcron Feb 14, 2026
7933fde
test(05-05): add comprehensive metrics computation and display tests
initcron Feb 14, 2026
4839b0d
docs(05-05): add reliability metrics documentation
initcron Feb 14, 2026
becca17
docs(05-05): complete reliability metrics plan execution summary and …
initcron Feb 14, 2026
8c85278
fix(05-05): relax scaling test threshold for debug builds
initcron Feb 14, 2026
109534b
test(05-06): add end-to-end integration test for full persona workflow
initcron Feb 14, 2026
977e6a7
docs(05-06): add developer guide for persona system architecture
initcron Feb 14, 2026
403a55f
docs(05-06): add user tutorial for creating agent personas
initcron Feb 14, 2026
d6d1f78
docs(05-06): add API reference documentation for persona system
initcron Feb 14, 2026
ffcccd2
docs(05-06): add example personas library with 5 reference agents
initcron Feb 14, 2026
593336a
docs(05-06): add troubleshooting guide for persona system issues
initcron Feb 14, 2026
d73a25c
docs(05-06): add Phase 5 design rationale document
initcron Feb 14, 2026
1a45c6f
docs(05-06): update architecture docs with Phase 5 persona system
initcron Feb 14, 2026
633976e
docs(05-06): add comprehensive test summary and verification report
initcron Feb 14, 2026
d473d86
docs(05-06): add Phase 5 completion summary and hand-off documentation
initcron Feb 14, 2026
e1aa874
docs(05-06): complete integration-testing-docs plan and mark Phase 5 …
initcron Feb 14, 2026
29ee2ec
docs(06-conversational-configuration): complete phase research for co…
initcron Feb 14, 2026
bb74f20
docs(06-conversational-configuration): create phase plan (5 plans, 3 …
initcron Feb 14, 2026
f427a1f
docs(06-conversational-configuration): align research with provider-a…
initcron Feb 14, 2026
61533f5
docs(06-conversational-configuration): set Gemini 3.5 Flash as defaul…
initcron Feb 14, 2026
27a0265
docs(06-conversational-configuration): correct model version to Gemin…
initcron Feb 14, 2026
798fd83
chore(06-conversational-configuration): create aof-conversational cra…
initcron Feb 14, 2026
32b5cfa
feat(06-conversational-configuration): define core conversation types
initcron Feb 14, 2026
6e68e01
feat(06-conversational-configuration): implement input sanitization w…
initcron Feb 14, 2026
44ad6ed
feat(06-conversational-configuration): implement intent classificatio…
initcron Feb 14, 2026
8f89f87
feat(06-conversational-configuration): implement session management w…
initcron Feb 14, 2026
71561fb
feat(06-conversational-configuration): implement orchestrator routing…
initcron Feb 14, 2026
4a1d877
test(06-conversational-configuration): add integration test structure
initcron Feb 14, 2026
026487c
docs(06-conversational-configuration): create developer architecture …
initcron Feb 14, 2026
62b5b19
docs(06-conversational-configuration): complete 06-01-PLAN execution …
initcron Feb 14, 2026
37454eb
feat(06-conversational-configuration): add Specialist trait interface
initcron Feb 14, 2026
7ea7252
feat(06-conversational-configuration): add squad template library wit…
initcron Feb 14, 2026
2d4a539
feat(06-conversational-configuration): add schedule parsing engine wi…
initcron Feb 14, 2026
3548c2e
feat(06-conversational-configuration): add YAML generation utilities
initcron Feb 14, 2026
16536ef
feat(06-conversational-configuration): implement SquadBuilder special…
initcron Feb 14, 2026
3cfe12a
feat(06-conversational-configuration): implement SkillTeacher specialist
initcron Feb 14, 2026
838691e
feat(06-conversational-configuration): wire SquadBuilder and SkillTea…
initcron Feb 14, 2026
888c004
docs(06-conversational-configuration): add squad templates and skill …
initcron Feb 14, 2026
eddec9b
fix(06-conversational-configuration): disable scheduler module to all…
initcron Feb 14, 2026
d3008de
feat(06-conversational-configuration): implement Scheduler specialist
initcron Feb 14, 2026
7babe9d
feat(06-conversational-configuration): wire Scheduler into orchestrator
initcron Feb 14, 2026
931e509
docs(06-conversational-configuration): complete 06-03-PLAN execution …
initcron Feb 14, 2026
5d522ee
docs(06-conversational-configuration): add schedule configuration doc…
initcron Feb 14, 2026
953cefc
fix(06-conversational-configuration): remove unused import warning in…
initcron Feb 14, 2026
3148320
docs(06-conversational-configuration): complete 06-04-PLAN execution …
initcron Feb 14, 2026
8ed8b49
feat(06-conversational-configuration): implement generation validatio…
initcron Feb 14, 2026
8342828
feat(06-conversational-configuration): implement AgentCreator specialist
initcron Feb 14, 2026
03a455d
feat(06-conversational-configuration): wire AgentCreator into orchest…
initcron Feb 14, 2026
dee84e2
test(06-conversational-configuration): add comprehensive agent creati…
initcron Feb 14, 2026
d6652f9
docs(06-conversational-configuration): add agent generation documenta…
initcron Feb 14, 2026
4abf85b
fix(06-conversational-configuration): correct conflict detection test…
initcron Feb 14, 2026
0b143c0
docs(06-conversational-configuration): complete 06-02-PLAN execution …
initcron Feb 14, 2026
192d25c
feat(06-conversational-configuration): implement file persistence module
initcron Feb 14, 2026
16ba25f
feat(06-conversational-configuration): add conversation REST API endp…
initcron Feb 14, 2026
c6b12e8
feat(06-conversational-configuration): add TypeScript types for conve…
initcron Feb 14, 2026
b684526
feat(06-conversational-configuration): add Redux conversation slice
initcron Feb 14, 2026
8c53535
feat(06-conversational-configuration): add useConversation hook
initcron Feb 14, 2026
4fa05e3
feat(06-conversational-configuration): add ConversationPanel and Chat…
initcron Feb 14, 2026
85ec8ce
feat(06-conversational-configuration): add FilePreview and YamlEditor…
initcron Feb 14, 2026
0ae7057
feat(06-conversational-configuration): add routing and CreateAgent page
initcron Feb 14, 2026
ebf6780
test(06-conversational-configuration): add persistence tests and API …
initcron Feb 14, 2026
cb5b906
docs(06-conversational-configuration): add user documentation for con…
initcron Feb 14, 2026
06dd9e1
docs(06-conversational-configuration): complete 06-05-PLAN execution …
initcron Feb 14, 2026
20b631f
docs: update internal developer documentation for Phase 6 completion
initcron Feb 14, 2026
e1bc785
feat(07-coordination-protocols): create aof-coordination-protocols cr…
initcron Feb 14, 2026
3728d88
feat(07-coordination-protocols): define CoordinationProtocolError type
initcron Feb 14, 2026
f10faca
feat(07-coordination-protocols): define SessionMessage and MessageTyp…
initcron Feb 14, 2026
8876089
feat(07-coordination-protocols): implement SessionTools message queue…
initcron Feb 14, 2026
62b0e36
feat(07-coordination-protocols): extend CoordinationEvent with protoc…
initcron Feb 14, 2026
cc40088
docs(07-coordination-protocols): create internal and user-facing docu…
initcron Feb 14, 2026
b9fcde9
docs(07-coordination-protocols): complete 07-01-PLAN execution summar…
initcron Feb 14, 2026
754f4ca
feat(07-coordination-protocols): implement HeartbeatScheduler
initcron Feb 14, 2026
ed3c32d
feat(07-coordination-protocols): implement CoordinationManager
initcron Feb 14, 2026
819edd0
feat(07-coordination-protocols): add coordination config to serve com…
initcron Feb 14, 2026
aa7d556
feat(07-coordination-protocols): add coordination health REST endpoint
initcron Feb 14, 2026
2a21e9d
test(07-coordination-protocols): verify heartbeat and manager tests pass
initcron Feb 14, 2026
101726d
docs(07-coordination-protocols): add heartbeat architecture and user …
initcron Feb 14, 2026
e9b7991
docs(07-coordination-protocols): complete 07-02-PLAN execution summar…
initcron Feb 14, 2026
2bff02a
feat(07-coordination-protocols): implement TokenMetrics with atomic c…
initcron Feb 14, 2026
63bd2e3
feat(07-coordination-protocols): integrate TokenMetrics into Coordina…
initcron Feb 14, 2026
610c90f
feat(07-coordination-protocols): add metrics config and REST endpoint…
initcron Feb 14, 2026
bacd1ae
docs(07-coordination-protocols): add token metrics architecture to de…
initcron Feb 14, 2026
2786747
docs(07-coordination-protocols): create user-facing token budget mana…
initcron Feb 14, 2026
2900f89
docs(07-coordination-protocols): complete 07-04-PLAN execution summar…
initcron Feb 14, 2026
d31712b
feat(07-coordination-protocols): implement StandupConfig and StandupS…
initcron Feb 14, 2026
d266dda
feat(07-coordination-protocols): implement standup scheduling loop
initcron Feb 14, 2026
484bc3b
feat(07-coordination-protocols): implement standup response handling …
initcron Feb 14, 2026
a62067a
feat(07-coordination-protocols): implement optional Sonnet summarization
initcron Feb 14, 2026
37c5899
feat(07-coordination-protocols): integrate StandupScheduler into Coor…
initcron Feb 14, 2026
520ed8d
docs(07-coordination-protocols): complete 07-03-PLAN core execution a…
initcron Feb 14, 2026
7e78aac
test(07-coordination-protocols): create mock agent infrastructure for…
initcron Feb 14, 2026
74b67b0
test(07-coordination-protocols): add heartbeat integration test infra…
initcron Feb 14, 2026
c82b4b2
docs(07-coordination-protocols): add example coordination configuration
initcron Feb 14, 2026
9425ef4
docs(07-coordination-protocols): create user setup guide
initcron Feb 14, 2026
428f1d9
docs(07-coordination-protocols): create troubleshooting guide
initcron Feb 14, 2026
de4f00e
docs(07-coordination-protocols): complete 07-06-PLAN execution summar…
initcron Feb 14, 2026
14e7006
docs(roadmap): mark Phase 7 (Coordination Protocols) complete
initcron Feb 14, 2026
ff6217b
feat(08-production-readiness): create per-tool seccomp profiles
initcron Feb 14, 2026
8d83d3f
feat(08-production-readiness): implement SeccompProfileManager and Ca…
initcron Feb 14, 2026
d2c285f
chore(08-production-readiness): add Criterion and tokio-console depen…
initcron Feb 14, 2026
e329fe0
feat(08-production-readiness): define credential access audit types i…
initcron Feb 14, 2026
7a63999
feat(08-production-readiness): implement credential access auditing a…
initcron Feb 14, 2026
819db2b
feat(08-production-readiness): create Criterion micro-benchmarks for …
initcron Feb 14, 2026
719ec4a
test(08-production-readiness): add integration performance tests and …
initcron Feb 14, 2026
fa76e31
test(08-production-readiness): create security test suite
initcron Feb 14, 2026
b04d63e
feat(08-production-readiness): add tokio-console profiling support
initcron Feb 14, 2026
29e6792
ci(08-production-readiness): add performance regression detection wor…
initcron Feb 14, 2026
fc12199
docs(08-production-readiness): create security hardening documentation
initcron Feb 14, 2026
e627300
docs(08-production-readiness): add comprehensive performance document…
initcron Feb 14, 2026
b0e9637
docs(08-production-readiness): complete 08-01-PLAN execution summary …
initcron Feb 14, 2026
351ee42
chore(08-production-readiness): add Prometheus and structured logging…
initcron Feb 14, 2026
4ab8aaf
feat(08-production-readiness): add device pairing types to aof-core
initcron Feb 14, 2026
e1b4208
feat(08-production-readiness): implement Prometheus metrics registry
initcron Feb 14, 2026
2388e35
feat(08-production-readiness): implement health/readiness checks and …
initcron Feb 14, 2026
cec2951
feat(08-production-readiness): add systemd service, Docker improvemen…
initcron Feb 14, 2026
d1c2c69
docs(08-production-readiness): comprehensive deployment and observabi…
initcron Feb 14, 2026
22d376c
feat(08-production-readiness): implement Private CA for device certif…
initcron Feb 14, 2026
1637b27
docs(08-04): complete production deployment infrastructure plan summa…
initcron Feb 14, 2026
f560f58
feat(08-production-readiness): implement DeviceRegistry with approval…
initcron Feb 14, 2026
e9c730a
docs(08-production-readiness): partial completion summary for 08-03 d…
initcron Feb 14, 2026
c87fd56
feat(08-production-readiness): implement resilience patterns (circuit…
initcron Feb 14, 2026
dd48aec
test(08-production-readiness): add chaos engineering test suite
initcron Feb 14, 2026
9468c9c
docs(08-production-readiness): add SLO definitions, incident runbooks…
initcron Feb 14, 2026
d8e9d0a
docs(08-production-readiness): complete 08-05-PLAN execution summary …
initcron Feb 14, 2026
dff62c7
docs(phase-8): add strategic vision for OpenAgentiX platform and secu…
initcron Feb 14, 2026
46d9532
feat(08-production-readiness): implement mTLS server config and devic…
initcron Feb 14, 2026
6da7d2a
docs(08-production-readiness): complete device pairing documentation
initcron Feb 14, 2026
ebcbc45
docs(08-production-readiness): complete 08-03-PLAN execution summary
initcron Feb 14, 2026
0028fea
docs(08-production-readiness): update STATE for 08-03-PLAN completion
initcron Feb 14, 2026
c7262c7
docs(phase-8): complete production-readiness phase execution with 100…
initcron Feb 14, 2026
099bbdd
feat(gojo): Complete AOF test setup with 11 specialized agent minions
initcron Feb 14, 2026
4b04584
fix(gojo): Correct serve-config format and update all documentation
initcron Feb 14, 2026
778d1a5
feat(gojo): Configure port 7777 to avoid conflicts and add PORT-CONFI…
initcron Feb 14, 2026
99f9600
refactor: rename gojo → quickstart (better conveys testing infrastruc…
initcron Feb 14, 2026
59598e0
docs(quickstart): Add comprehensive testing guide with 4 test levels
initcron Feb 14, 2026
145fef5
docs(quickstart): Fix agent invocation syntax - correct --interactive…
initcron Feb 14, 2026
926138f
docs(quickstart): Update to use pnpm and add comprehensive web-ui set…
initcron Feb 14, 2026
210c22d
feat(07-coordination-protocols): add TypeScript types for coordinatio…
initcron Feb 14, 2026
257e283
feat(07-coordination-protocols): create Redux coordinationSlice
initcron Feb 14, 2026
a4cf9b0
feat(07-coordination-protocols): create useCoordination hook
initcron Feb 14, 2026
20ddddf
feat(07-coordination-protocols): extend useWebSocket for coordination…
initcron Feb 14, 2026
bf4c8d9
feat(07-coordination-protocols): create HeartbeatDashboard component
initcron Feb 14, 2026
39bbec2
feat(07-coordination-protocols): create StandupFeed component
initcron Feb 14, 2026
92e15e3
feat(07-coordination-protocols): create CoordinationStatus component
initcron Feb 14, 2026
22513f0
feat(07-coordination-protocols): create CoordinationPage
initcron Feb 14, 2026
96b9127
test(07-coordination-protocols): add component tests
initcron Feb 14, 2026
e92408a
docs(07-coordination-protocols): update documentation for Mission Con…
initcron Feb 14, 2026
5933bc1
docs(07-coordination-protocols): complete 07-05-PLAN execution summar…
initcron Feb 14, 2026
c062783
docs: update STATE.md for Plan 07-05 completion
initcron Feb 14, 2026
c2ddd4c
docs(api): create formal coordination API and component specification…
initcron Feb 14, 2026
4d5e4b3
docs: create comprehensive API and frontend web app specifications fo…
initcron Feb 14, 2026
0f7d347
docs(milestone-2): phase 1 planning + builder.io handoff package
initcron Feb 14, 2026
e787d6a
docs(handoff): add builder.io project setup configuration
initcron Feb 14, 2026
b37e643
feat(web-app): create complete React + TypeScript scaffold for Milest…
initcron Feb 14, 2026
1ec3cd9
fix(aof-gateway): remove hardcoded Slack tokens to fix GitHub push pr…
initcron Feb 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
134 changes: 134 additions & 0 deletions .github/workflows/performance.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
name: Performance Regression Detection

on:
pull_request:
branches: [main]
push:
branches: [main]
workflow_dispatch:

env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1

jobs:
micro-benchmarks:
name: Criterion Micro-benchmarks
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable

- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}

- name: Cache cargo index
uses: actions/cache@v4
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}

- name: Cache build artifacts
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-cargo-build-${{ hashFiles('**/Cargo.lock') }}

- name: Run event_serialization benchmark
run: cargo bench --bench event_serialization

- name: Run broadcaster_throughput benchmark
run: cargo bench --bench broadcaster_throughput

- name: Run coordination_overhead benchmark
run: cargo bench --bench coordination_overhead

- name: Upload Criterion HTML reports
uses: actions/upload-artifact@v4
if: always()
with:
name: criterion-reports
path: target/criterion/
retention-days: 14

- name: Store baseline on main branch
if: github.ref == 'refs/heads/main'
run: |
cargo bench --bench event_serialization -- --save-baseline main
cargo bench --bench broadcaster_throughput -- --save-baseline main
cargo bench --bench coordination_overhead -- --save-baseline main

- name: Compare against main baseline on PRs
if: github.event_name == 'pull_request'
run: |
# Note: For proper baseline comparison, we'd need to restore the baseline
# from a previous run. This is a simplified version that shows the pattern.
# Full implementation would use actions/cache to restore baselines.
cargo bench --bench event_serialization -- --baseline main || echo "No baseline to compare"
cargo bench --bench broadcaster_throughput -- --baseline main || echo "No baseline to compare"
cargo bench --bench coordination_overhead -- --baseline main || echo "No baseline to compare"

integration-performance:
name: Integration Performance Tests
runs-on: ubuntu-latest
# Only run on main branch pushes to avoid excessive CI time on every PR
if: github.ref == 'refs/heads/main'
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable

- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}

- name: Cache cargo index
uses: actions/cache@v4
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}

- name: Cache build artifacts
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-cargo-build-perf-${{ hashFiles('**/Cargo.lock') }}

- name: Build release binary
run: cargo build --release

- name: Run baseline single agent tests
run: cargo test --test perf_baseline_single_agent --release -- --nocapture

- name: Run concurrent agents test
run: cargo test --test perf_concurrent_agents --release -- --nocapture

- name: Run memory stability tests (ignored by default)
run: cargo test --test perf_memory_stability --release -- --ignored --nocapture

regression-check:
name: Regression Failure Detection
runs-on: ubuntu-latest
needs: [micro-benchmarks]
if: always()
steps:
- name: Check benchmark results
run: |
# This job aggregates results and would fail the workflow if:
# 1. Criterion detects >10% regression (configured in benchmark code with significance_level(0.1))
# 2. Integration tests fail assertions (>10s for 20 agents, >100ms p95 latency)
# 3. Memory stability tests detect unbounded growth

# In a production setup, this would parse Criterion output and fail if regression detected
echo "Benchmark results checked. See micro-benchmarks job for details."
echo "Criterion will fail if p-value indicates >10% regression with statistical significance."
15 changes: 15 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -78,5 +78,20 @@ secrets/
*.log
logs/

# Planning docs (except summaries and state)
.planning/*
!.planning/STATE.md
!.planning/PROJECT.md
!.planning/ROADMAP.md
!.planning/REQUIREMENTS.md
!.planning/CONTEXT.md
!.planning/ARCHITECTURE.md
!.planning/phases/
!.planning/phases/**/
!.planning/phases/**/*-SUMMARY.md
!.planning/phases/**/*-PLAN.md
!.planning/phases/**/CONTEXT.md
!.planning/phases/**/RESEARCH.md

# OS files
Thumbs.db
191 changes: 191 additions & 0 deletions .planning/PROJECT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
# AOF - The Humanized Agentic Ops Platform

## What This Is

An open-source (Apache 2.0) platform that makes AI agents feel like team members, not scripts. Built on a Rust core, AOF gives DevOps/SRE engineers agent squads with real personalities, visible coordination, and a Mission Control dashboard — all while doing real ops work (K8s, monitoring, incident response). Think "OpenClaw for DevOps" but built for production infrastructure.

## Core Value

Agents that feel human — with personas, visible communication, and a Mission Control where you see your team of AI minions coordinating, reporting, and getting real work done.

## Requirements

### Validated

<!-- Shipped and confirmed valuable (existing AOF capabilities). -->

- Multi-provider LLM abstraction (Anthropic, OpenAI, Google, Groq, Ollama, Bedrock) — existing
- Agent execution engine with tool composition and streaming — existing
- Workflow execution (DAG-based step orchestration) — existing
- AgentFlow execution (multi-agent graph flows) — existing
- Memory backends (in-memory, file-based, optional Redis/Sled) — existing
- MCP client support (stdio, SSE, HTTP transports) — existing
- Built-in tool registry (kubectl, docker, git, shell, HTTP, file ops) — existing
- Trigger server with platform adapters (Telegram, Slack, Discord stubs) — existing
- Skills system (SKILL.md loading, registry, requirements gating) — existing
- Fleet coordination primitives (Raft, Byzantine consensus) — existing
- kubectl-style CLI (aofctl) — existing
- TUI interactive mode with streaming — existing
- Error knowledge base for learning from failures — existing
- Session management with resume capability — existing
- YAML-first agent/workflow/flow configuration — existing

### Active

<!-- The reinvention: humanized agentic ops platform. -->

**Agent Persona System (SOUL.md)**
- [ ] Each agent has a persistent personality defined in SOUL.md (identity, communication style, boundaries, vibe)
- [ ] Agents speak in character — their personality comes through in every interaction
- [ ] Avatar/icon system — each agent has a visual identity (emoji, pixel art, or custom image)
- [ ] Role titles and skill tags displayed on agent profile cards
- [ ] Agents maintain consistent personality across sessions via memory

**Visible Agent Communication**
- [ ] Squad chat — agents talk to each other in a shared chat stream visible to humans
- [ ] Announce queue — cross-agent communication protocol (agent A can message agent B)
- [ ] Humans can join squad chat, interrupt, redirect, or give new instructions
- [ ] Agent-to-agent task delegation — one agent can create tasks for another
- [ ] Communication logs are persistent and reviewable

**Mission Control (WASM Web UI)**
- [ ] WASM-based web dashboard compiled from Rust (pure Rust story, no JS framework)
- [ ] Agent cards — profile view with avatar, role, status, personality, skills, attention items
- [ ] Kanban task board — tasks flow through backlog/assigned/in-progress/review/done
- [ ] Squad chat panel — real-time view of agent-to-agent and human-to-agent conversation
- [ ] Live activity feed — real-time stream of what agents are doing (like GitHub activity)
- [ ] Task detail view — description, context, assignee (agent), comments, timeline, attachments
- [ ] Agent status indicators (idle, working, waiting for human, blocked)
- [ ] Squad overview — visual representation of all agents and their relationships

**Standups, Check-ins & Coordination**
- [ ] Agents perform scheduled standups — report what they did, what they're doing, blockers
- [ ] Check-in protocol — agents periodically report status without being asked
- [ ] Heartbeat system — proactive monitoring checks on schedules (every 30min, daily, etc.)
- [ ] Roundtable discussions — agents can hold group conversations to solve problems together
- [ ] Human-in-the-loop workflows — agents assign tasks to humans with context and comments

**Messaging Gateway (Slack/Discord)**
- [ ] Single bot mode — one bot in Slack, routes to different agents behind the scenes
- [ ] Dedicated agent channels — each agent appears separately in squad channels
- [ ] NAT-transparent — outbound WebSocket (no ngrok needed for Slack/Discord)
- [ ] Agents respond in character with their persona
- [ ] Squad announcements — broadcast to all agents or specific teams

**Conversational Configuration (The Interface IS Conversation)**
- [ ] Talk to the system to create agents — "I need a K8s monitoring agent" → agent with persona created
- [ ] Talk to build agent teams/fleets — "Build me an incident response squad" → team created with roles
- [ ] Talk to configure schedules — "Check my cluster every 30 minutes" → heartbeat configured
- [ ] Talk to add skills — "Learn how to debug our Postgres" → skill created from conversation
- [ ] YAML/CLI as power-user layer underneath — conversation generates config, not the other way around
- [ ] The main agent (orchestrator/router) understands intent and delegates to the right agents

**Real Ops Capabilities**
- [ ] K8s diagnostics — pod debugging, log analysis, event inspection, resource usage
- [ ] Incident response flow — triage agent coordinates specialist agents
- [ ] Monitoring integration — Prometheus queries, alert triage
- [ ] Skills platform — codify tribal knowledge as executable SKILL.md files
- [ ] Runbook execution — convert wiki/playbook procedures into agent skills

**Local-First Architecture**
- [ ] Local Rust daemon — agents run on your machine, Mission Control connects to it
- [ ] Optional server deployment — deploy daemon to server for always-on agents
- [ ] WebSocket control plane — Mission Control and Slack connect to daemon
- [ ] Session persistence — agent state survives daemon restarts

### Out of Scope

- Multi-tenancy / MSP features — enterprise product, not v1 open source
- RBAC / SSO / audit trails — enterprise product
- Billing / usage tracking — enterprise product
- Cloud-hosted SaaS offering — self-hosted only for v1
- Mobile app — web + Slack/Discord are the interfaces
- Voice/talk mode — text-based interactions for v1
- OAuth subscription support (Anthropic Pro/Max) — nice to have, not v1

## Context

**Why this exists:** OpenClaw proved that making AI agents feel human goes viral. Every agentic framework (LangGraph, CrewAI, Agno) feels like running scripts — even if technically powerful. The missing ingredient is the *human touch*: agents with personalities, visible coordination, and interfaces that make you feel like you're managing a team of intelligent minions. No one has built this for DevOps/SRE.

**What we're building on:** AOF has a solid Rust foundation — 13 crates covering LLM abstraction, agent execution, workflows, memory, tools, triggers, skills, and fleet coordination. The engine is proven. What's missing is the soul.

**Inspiration sources:**
- OpenClaw/Clawdbot: SOUL.md personas, agent-to-agent comms, skills platform, heartbeat system
- OpenClaw Mission Control: kanban tasks, agent cards, squad chat, live activity, task assignment
- Research in `/Users/gshah/work/opsflow-sh/plans/research/`: strategic analysis, feature extraction, architecture plans

**Existing codebase:** 13 Rust crates at v0.4.0-beta. Codebase map at `.planning/codebase/`. The Rust engine stays and evolves; the CLI/UX layer gets reinvented.

**Brand:** AOF (Agentic Ops Framework) remains the engine name. Product brand TBD — xops.bot is available as an option. Name decision deferred to post-prototype.

### Security: AOF's Enterprise Differentiation (vs OpenClaw)

**Phase 8 Delivery — Production Security Hardening:**

AOF is NOT just a humaner OpenClaw clone. It's **enterprise-grade agentic infrastructure** with security designed from the ground up:

**Defense-in-Depth Security Model (6 layers):**
1. **Sandbox Isolation:** Per-tool seccomp profiles blocking 23+ dangerous syscalls (ptrace, mount, bpf, etc.) — prevents kernel exploits
2. **Capability Dropping:** `--cap-drop=ALL` by default with per-tool allowlists — strips unnecessary permissions
3. **Credential Auditing:** CredentialAccessInterceptor logs every credential read with tamper-proof sequence numbers — track who accessed what
4. **Behavioral Anomaly Detection:** 4-component scoring system detects suspicious credential access patterns — catch insider threats
5. **Device Pairing & mTLS:** Private CA + device registry with approval workflow — only trusted devices can pair
6. **Production Observability:** SRE-grade metrics, health checks, graceful shutdown, incident runbooks — production-hardened

**Why this matters for enterprises:**
- **OpenClaw** executes user code with minimal isolation — fine for trusted OpenAI API calls, dangerous for production infrastructure access
- **AOF** runs untrusted agent code in hardened containers with comprehensive audit trails — enterprise can prove compliance
- **Selling point:** "Agents that feel human, but production-hardened for infrastructure access"

**Blog Series Planned (Q1 2026):**
1. "AOF vs OpenClaw: Why Human-Feeling Agents Need Enterprise Security"
2. "Seccomp Deep Dive: How AOF Prevents Sandbox Escape Attacks"
3. "Credential Auditing in Agentic Systems: The Missing Security Layer"
4. "From OpenClaw to OpenAgentiX: Generalizing AOF for Enterprise"

### Future Vision: OpenAgentiX Platform

**Phase 9-10 Generalization Path:**

AOF currently targets **DevOps/SRE** as initial market. Future vision is **OpenAgentiX** — a generalized agentic platform for any enterprise use case:

**Generalization Roadmap:**
- **v0.5 (AOF):** DevOps/SRE agents with K8s tools, incident response, monitoring
- **v1.0 (AOF + DevOps Enterprise):** Persona system, Mission Control, Slack/Discord, production hardening
- **v2.0 (OpenAgentiX):** Multi-domain agent framework — swap K8s tools for database, network, security, finance, HR tools
- **v2.5 (OpenAgentiX Enterprise):** Multi-tenancy, RBAC, SSO, audit trails, billing (separate commercial product)

**Key Insight:**
The security model (seccomp + credential auditing + behavioral anomaly detection) **is domain-agnostic**. It works for K8s agents, database agents, finance agents, any untrusted code executing against production systems.

**Market Positioning:**
- **OpenClaw** = Make agents feel human (great UX, no security)
- **AOF** = Make agents feel human + production-hardened (DevOps focused)
- **OpenAgentiX** = Make agents feel human + enterprise-secure (any domain, multi-tenancy, compliance)

## Constraints

- **Language**: Rust for core engine and WASM Mission Control (pure Rust story is a differentiator)
- **License**: Apache 2.0 — everything open source, enterprise features come later in separate products
- **Architecture**: Local-first — must work on a single machine, server deployment optional
- **Performance**: Rust performance is a selling point — agent communication and task coordination must be snappy
- **Frontend**: Mission Control built with builder.io (user's existing tool). Backend/daemon is Rust. Beautiful UX wins over language purity.
- **Backward compatibility**: Existing AOF YAML configs should still work (migration path, not hard break)
- **Cross-platform**: macOS, Linux, Windows (same as current AOF)

## Key Decisions

| Decision | Rationale | Outcome |
|----------|-----------|---------|
| builder.io for Mission Control | User's existing tool. Beautiful, polished UX. Rust backend + builder.io frontend. | — Pending |
| Local-first architecture | DevOps engineers want control, not another SaaS. Server mode is opt-in. | — Pending |
| Everything open source (v1) | Virality requires zero friction. Enterprise features are a separate product. | — Pending |
| Keep AOF as engine name | Established brand, crates already published. Product name TBD. | — Pending |
| Agents as "team members" not "tools" | This is THE differentiator. Every design decision serves the human feel. | — Pending |
| Slack/Discord dual mode | Single bot for quick access + dedicated agent channels for squad work | — Pending |
| Reinvention over evolution | Willing to restructure core if needed — the vision is more important than preserving current CLI patterns | — Pending |
| Conversation as primary interface | Users talk to the system, not write YAML. Config is generated from conversation. YAML is the power-user escape hatch. | — Pending |
| Simplicity over power | Dead simple first experience beats feature richness. If you need docs to start, you've lost. | — Pending |

---
*Last updated: 2026-02-11 after initialization*
Loading