1. System Roles and Components
- User: Initiates prompts, reviews or edits agent-generated plans, and gives feedback.
- Agent: Generates structured plans (e.g.,
add_event
,reflect
,reschedule_event
) using model outputs. - Planner Queue: Holds proposed agent actions awaiting user confirmation.
- Executor: Commits approved plans into persistent memory and/or calendar.
- Trace Log: Immutable record of both agent proposals and user decisions.
2. Agent Action Lifecycle
Every agent action flows through a defined lifecycle to support transparency, modification, and feedback:- proposal: User or agent generates an initial plan, often via function calling from an LLM.
- review: Plan is displayed to the user or organization for inspection or editing.
- approval: User confirms the plan or modifies it to fit their intent.
- execution: Approved plan is committed to memory and/or calendar.
- feedback: Optional user input (rating, revision, comment) is logged to guide future behavior.
Status Transitions
proposed
→approved
→executed
proposed
→rejected
executed
→edited
3. Trace Structure for Orchestration
Agent behavior is recorded and governed via structured memory traces. A special type of trace,agent_plan
, extends the general schema with orchestration-specific fields.
Required Fields
Field | Type | Description |
---|---|---|
action_type | string | One of: schedule, reflect, reschedule, log |
status | string | One of: proposed, approved, rejected, executed |
origin | string | One of: agent, user |
scheduled_for | string | Optional ISO timestamp representing intended execution time |
uid | string | Unique identifier for trace reference |
Trace Linking
agent_plan
traces may link tocalendar_event
orreflection
traces that result from their execution.- Use fields like
linked_event_uid
orchild_trace_ids
to maintain referential integrity.
4. Orchestration UI Patterns
Chronologue includes several interface modules to manage agent behavior interactively:- Daily Agent Preview: Shows all pending proposed actions, with accept/reject controls.
- Command Log: Timeline of all agent outputs and user decisions, chronologically sorted.
- Editable Plan Workspace: UI that allows drag-and-drop reordering, rescheduling, or editing of proposed actions.
- Feedback Modal: Allows users to rate or comment on specific agent behaviors, improving downstream suggestions.
5. Feedback Loop, Behavior Adaptation, RL, Federated Learning
The orchestration system supports structured feedback and adaptation.feedback_rating
andnotes
can be applied to any trace.- Feedback can be linked to the
agent_plan
UID to trace behavioral outcomes. - Longitudinal analysis of approved/rejected traces can drive:
- Reward modeling
- Reinforcement learning (e.g., via success/failure tags)
- Federated updates to personalized planning models
6. Scheduling and User Customization
User constraints are enforced and communicated to agents through scheduling metadata:- Time as a constraint interface: Only allow agents to propose actions during unblocked slots.
- User-defined cadence: Set rules for how often agents can propose certain actions (e.g., 1 reflection per day).
- Discrete allocation: Agents may be limited to a budget of actions per day or week, modifiable by the user.
- Prompt context injection: Availability and user preferences are embedded in model inputs.
7. Implementation Notes
Chronologue uses the following system architecture for orchestration:FastAPI Endpoints
POST /agent/plan
— submit an agent proposalGET /agent/queue
— retrieve pending plansPOST /agent/approve
— approve a specific planPOST /agent/reject
— reject a specific planPOST /agent/feedback
— log feedback to a specific trace
Frontend Sync
- Use WebSockets or polling to synchronize planner queue and user approvals in real time.
System Separation
Modular separation is recommended:- Memory Trace Store: All long-term memory and behavior logs
- Calendar Event Store: Ground-truth schedule and event registry
- Agent Queue Store: Temporary buffer for proposals pending execution