Open Questions — Agents, Skills, Tasks specs
Round-9 status update (2026-05-25) — design set locked. Operator answered all remaining questions. Most defaulted to the ★ recommendation; explicit round-9 overrides:
- N5 override — BOTH export AND import for Agents ship in v1 (was ★a = export only). New phase 6a (T64a-T64h) in
agents/tasks.mdfor the per-Agent envelope + controller + UI + e2e. Distinct from the bulk account-transfer flow in ADR-008.- N6 override — Keep all 5
AgentBudget.intervalUnitvalues in v1 + implement multi-interval aggregator. Reversed round-6 narrowing inagents/plan.md §3.1; new task T34a covers thegetCurrentPeriodStart/getNextPeriodStarthelpers handling hour/day/week/month/unlimited with anchored rolling periods.- P1 — 6 starters seeded in
ever-works/agentsrepo at launch: CEO, CTO, Researcher, PR-Reviewer, Editor, Designer.- P4 explicit no-modal — No announcement modal, no migration story, no existing-user UX work. Operator quote: "NO NEED THIS! WE DO NOT HAVE ANY REAL USERS YET, WE DON'T NEED SUCH THINGS!!!" Confirms K3. UX-DESIGN §11.3 updated.
- All other items are now
[Answered: ★ default per recommendation]— bulk-marked by script. Spec set is design-locked; next phase is implementation per the 12-18 PR shipping plan inarchitecture/implementation-reuse-map.md §14.
Round-8 status update (2026-05-25): Operator answered the bulk of A-L sections inline. The
[Answered: X]tag now appears on each resolved question with the chosen option. Where the answer overrode my ★ recommendation OR triggered substantive spec changes, the change is noted in the relevant feature spec / plan / tasks file with a back-reference to this question. Major substantive impacts from round-8 answers:
- F4-b (reversed my F4-a): Tasks created on an Idea do NOT follow to a Work when the Idea is accepted. Idea-level tasks (validity checks, marketing efforts, etc.) stay on the Idea.
- F5 (operator override): Recurring tasks MUST ship in v1 (was Out of Scope). New Trigger.dev cron task; full plan in
task-tracking/plan.md.- F3 clarification: Tasks ≠ Ideas. Ideas are spec/PM "Epic"-ish abstractions (auto-generated, droppable, never bugs); Tasks are implementation-level work units. Added to
task-tracking/spec.md §1and ADR-009.- H3 (operator override): Agents have THREE avatar modes in v1 — initials (default, auto-derived), icon picker, image upload (when tenant storage enabled). Updated UX-DESIGN + Agents spec + plan.
- K1 (yes, draft): New doc
architecture/agent-yml-manifest-schema.mdships the Zod schema foragent.yml.- K2 (yes, but trust): UX-DESIGN gets light additional mockups for the most novel surfaces (Tasks Kanban detail, Agent dashboard live state).
- K3 (no migration): we don't ship a migration story for existing users; as long as nothing breaks for them, we're fine.
Unanswered yet (∼50 items remain open across sections M / N / O / P / Q / R3 / S): these default to their ★ recommendations unless the operator overrides. Marked
[Open]in the headings below.
Round-6 status update (2026-05-25): Operator answered several open questions inline during PR review. Resolved items:
- A2 (Skill catalog placement): separate repo
ever-works/skillsvia plugin → ADR-007 superseded by ADR-012 + ADR-014.- R1 (Templates catalog unification): hybrid —
/templatespage hub with kind-selector AND per-feature page (Agents/Skills/Tasks) templates browsers. Both read from the same backend services. Updated ADR-010.- Plugin packaging of Skills + Tasks: Skills + Task TRACKING become plugin capabilities. New ADR-012 (Skills) and ADR-013 (Task tracking). ADR-006 partially superseded.
- Feature flag scope: dropped — features ship as launch / MVP, no per-feature flag gating.
- No hardcoded catalogs: codified in ADR-014. All catalogs (Mission Templates, Agent templates, Skill catalog, Task templates) live in separate
ever-works/*GitHub repos.Questions below remain open unless explicitly marked
[Resolved].
Status: Open — for operator (Ruslan) review
Last updated: 2026-05-25
Use: pick an answer per question (or write your own); I'll fold the answers into the specs and update the PR.
How this file is organised. Questions are grouped by topic, not by spec file. Each question has:
- What I'm asking — one sentence.
- Why it matters — why the answer changes the design.
- Options — concrete choices with the trade-off.
- My recommendation — what I'd pick if forced. Marked
★.- Where it shows up in code/specs — file references.
Skim the
★recommendations first; only dig into a question if you disagree with the recommendation.
A. Storage & files
A1 — Tenant control repo: ship in v1 or defer to v2? [Answered: a]
What I'm asking. Tenant-scoped Agents have no natural "owning repo". Should v1 ship a per-user <user>-control GitHub repo (created on first Agent creation), OR keep tenant Agents DB-only and offer a "promote to repo" migration later?
Why it matters. Affects scope of v1 — control-repo support means ≥1 new feature (signup hook, repo scaffolding, migration UI). Also affects Constitution III (source-of-truth in Git) — DB-only is a deviation.
Options.
- ★ A1-a — Defer. v1 stores tenant Agent MD files inline in DB TEXT columns (5 columns per agent). Offer a one-click "export to control repo" migration in v2 when control repo lands.
- A1-b — Ship in v1. Adds 1-2 weeks of work but no deviation from Constitution III.
- A1-c — Force users to choose a scope (Mission or Work) for every Agent; no tenant scope in v1.
Where it shows up.
features/agents/spec.md §3.6FR-23, §8 Q1architecture/agents-skills-tasks.md §4.5- ADR-008 (drafted in this round, defaults to A1-a).
A2 — Skill catalog: in-monorepo or separate repo? [Resolved — separate repo ever-works/skills via Skills plugin]
What I'm asking. Where does the platform-shipped Skill catalog (~1000+ entries expected long-term) live?
Why it matters. Affects how new skills get reviewed/merged, build-time impact, atomic versioning with code.
Options.
- ★ A2-a — In-monorepo under
apps/api/src/skills/catalog/<slug>/<slug>.md. Fastest to ship; atomic version with code; same model as Mission Templates catalog already on develop (packages/agent/src/missions/mission-template.config.ts). - A2-b — Separate
ever-works/skills-catalogrepo, mounted at boot. Lower friction for community PRs; need a sync mechanism + version pinning. - A2-c — DB-seeded from a one-off seeder. Easy to mutate at runtime; loses Git review.
Where it shows up. features/skills/spec.md §1, §3.2, §9 Q1. ADR-007 (drafted, defaults to A2-a).
A3 — .works/ subfolder names: confirm naming. [Answered: a]
What I'm asking. The new per-Agent folder structure I propose:
.works/agents/<agent-slug>/
agent.yml
SOUL.md
AGENTS.md
HEARTBEAT.md
TOOLS.md
skills/
<skill-slug>.md
Confirm the four MD filenames AND that we want agent.yml (not metadata.yml, not agent.json).
Options.
- ★ A3-a — Keep as proposed.
agent.ymllowercased to matchmission.ymlandworks.ymlprecedent. - A3-b — Rename
AGENTS.mdto something less collision-prone (e.g.ROLE.md) since "AGENTS.md" already exists in the repo as a meta-doc for AI agents. Could confuse new contributors. - A3-c — Drop one of the four MD files (e.g. merge
TOOLS.mdintoagent.yml).
Where it shows up. architecture/agents-skills-tasks.md §4.3, features/agents/spec.md §3.6.
Note: AGENTS.md is genuinely ambiguous — there's already a project-level
AGENTS.mdfor AI assistants. If a user creates an Agent named "Coordinator" the file becomes.works/agents/coordinator/AGENTS.md— the per-agent role description. Not the same thing, but possibly confusing. Worth a rename?
B. Scope, hierarchy, and permissions
B1 — Should an Agent be able to delete other Agents it created? [Answered: a]
What I'm asking. permissions.canCreateAgents lets an Agent spawn child Agents. Should there be a parallel canDeleteAgents?
Options.
- ★ B1-a — No. Only humans can delete Agents. Lower blast radius; an Agent can be promoted/paused/archived but not destroyed by another Agent.
- B1-b — Yes, but only for child Agents it created (via parent FK).
- B1-c — Yes, full delete capability gated by a separate permission.
Where it shows up. features/agents/spec.md §5, §8 Q2.
B2 — When tenant-scoped Agent has membership in 3 Missions, can it freely read Mission B's KB while doing work for Mission A? [Answered: a]
What I'm asking. Cross-scope data visibility for an Agent that's a member of multiple targets.
Options.
- ★ B2-a — Yes, by default. A tenant Agent is "trusted across its memberships" — it can read KB / activity / spend across all its targets in the same run.
- B2-b — No, per-run scoping. When a tenant Agent runs in the context of Mission A, it only sees Mission A's KB during that run. Crisp blast-radius; needs explicit context-handoff mechanism.
- B2-c — Per-skill permission (e.g. Skill X says "cross-mission read OK"; Skill Y says "single-mission only").
Where it shows up. architecture/agents-skills-tasks.md §3, §5. Not yet documented — need to add.
B3 — Agent-to-Agent communication: forced through Tasks, or allow DMs? [Answered: a]
What I'm asking. Should Agents be able to chat with each other directly, or always via a Task they share?
Options.
- ★ B3-a — Force through Tasks. v1 has no Agent ↔ Agent DM channel. If CEO wants to ping VP-Engineering, CEO creates a Task assigning VP-Engineering. Auditable, scoped, gated by
canAssignTasks. - B3-b — Allow DMs via a new
agent_messagestable. - B3-c — Allow DMs but only within scope (Tenant Agents can DM other Tenant Agents; Mission Agents can DM siblings).
Where it shows up. features/agents/spec.md §6 Out of Scope. Defer to v2 unless you want it now.
B4 — Can a human Work member with role VIEWER see Agents on that Work? [Answered: a]
What I'm asking. WorkMember roles today: OWNER, MANAGER, EDITOR, VIEWER. Does VIEWER see the Agents tab on Work detail?
Options.
- ★ B4-a — Yes, read-only. VIEWERs see Agents and their runs but can't create, pause, or assign tasks.
- B4-b — No. Agents are only visible to OWNER/MANAGER/EDITOR.
Where it shows up. features/agents/spec.md §3.9. Not yet documented — should be.
C. Runtime & lifecycle
C1 — Heartbeat tick semantics: what does an Agent do when nothing is assigned? [Answered: a]
What I'm asking. When the cron fires and the Agent has no pending tasks/chats, what should the run do?
Options.