Agent-native Philosophy
Sinaris is designed for AI coding agents, but it does not try to become the agent.
The product gives agents durable facts, structured tools, current state, and safety invariants. The agent's SKILL decides how to act.
Core Boundary
| Layer | Owns | Examples |
|---|---|---|
| Product code | Facts, tools, state, invariants, projections | Task ownership, phase gates, queue status, AgentEvent, CLI protocol, Hub projection |
| SKILLs | Workflow policy and judgment | Guide questions, Proposal framing, Design sufficiency, Apply execution, verification, drift handling, continuation decisions |
| Human | Intent and acceptance | Product direction, trade-off decisions, final approval, release confidence |
The system says what happened. The SKILL says what to do next.
Product Code Should
- Expose clear CLI/API tools for agents to query and mutate state.
- Enforce ownership, readiness, dependency, phase, proposal, persistence, and concurrency invariants.
- Emit structured facts through
AgentEventinstead of relying on prose-only notifications. - Record auditable state for Hub, Activity, and resume context.
- Avoid waking agents when work is certainly unavailable.
- Keep generated assets current with the installed Sinaris tool version.
Product Code Should Not
- Write business prose on behalf of the agent.
- Encode the full Apply or Design decision tree in C#.
- Treat raw host transcripts as the source of product truth.
- Hide missing prerequisites behind defensive fallback behavior.
- Let host-native Plan or Build Plan modes execute outside Sinaris workflow gates.
SKILLs Should
- Decide whether the current workflow entry point is valid.
- Ask one focused question at a time when facts are insufficient.
- Decide which task to claim after reading queue and context facts.
- Decide how to implement, verify, refactor, pause, or stop.
- Decide whether a gap belongs in Guide, Proposal, Design, Apply, or Evaluator.
- Continue only when the workflow's entry and exit conditions are still satisfied.
Signal Design
Good Sinaris signals are declarative and structured:
text
Sinaris agent event:
{ "eventType": "queue.auto_claim_available", "task": { ... } }Weak signals are imperative scripts hidden in product code:
text
Run task next, claim the task, implement it, complete it, then keep looping.The first gives the agent facts. The second duplicates SKILL logic and makes product code responsible for workflow policy.
Why It Matters
This boundary lets Sinaris evolve with agent capabilities:
- product services stay small and testable;
- generated SKILLs can improve agent behavior without schema churn;
- humans can review the workflow rules agents follow;
- the system remains safe even when an agent misunderstands an event.