Duty Graph advisor handbook
Explainer, walkthrough, full user manual, playbook, training workbook, facilitator answers, client deliverables and glossary.
Hosted pilot: start here
Release 0.3 provides hosted advisor workspaces, a private synthetic sample, encrypted account API-key settings, discovery drafts and invitation email. The current path begins in Discovery and ends with reviewable work records. This remains a pilot, with the production gaps listed below.
Where things are
The left rail holds Home, Inbox, Companies, Settings and Help. Each company has its own sidebar:
| Sidebar item | What it is |
|---|---|
| Overview | The Company Snapshot: the company's front page. Use Print / Save as PDF to give it to a client. |
| Repo | The Company Repo: every file DutyGraph holds about the company, with its state, and the Repo Copilot. See The Company Repo and the Copilot. |
| Discovery | The Plan with its 4 steps, the Asks and the composer. See From Company Research to confirmed work. |
| Work Map | The value chain, the work flows, the Task Cards, the people and the RACI. |
| Opportunities | Your team's hours a week with the proposed agents and the capacity back, the possible constraints and the change for each one, cheapest first. See Opportunities and Route. |
| Agents | The tabs Workspace (the agent builder, it opens first), Saved agents, Requests, Review queue, Issued agents, Rules, Audit and Business review. The governance tabs (Requests to Audit) work on the Wesco sample. See Agents. |
| Outcomes | The weekly review, the decisions and the measures. |
| Strategy | The forward-looking frameworks. See Strategy. |
| Reports | The Client Brief and Download your company. Other reports show as Planned. |
The page header shows one Next button with the company's next action. The Repo has no Next button, because it has its own toolbar.
First visit
- Open https://dutygraph-v2.vercel.app and create your advisor account. Choose a strong password and keep it in your password manager; password recovery and email verification are not implemented yet.
- Open Settings › Workspace → Explore a fictional company → Open my sample company. Cobalt is clearly synthetic and private to your account. Loading it does not send email or call AI/search providers. Reopening returns the same sample, preserving your edits.
- Open Work Map. Select a business stream and stage to highlight the recorded organization, then select a person to see their duties, tasks and flows. Work with no stage, no owner or a removed stage remains visible for repair. The map uses explicit assignments; it does not infer membership from a title, department, reporting line or task value stage. PostgreSQL holds the authoritative records. Optional Neo4j Aura can project the graph, with current PostgreSQL records available when Aura is absent or behind.
- On Home, select Add a company for your own business. It opens Companies › Add account (the Add a company item in the company switcher opens the same dialog). Choose Already engaged in DutyGraph for a company you work with now, or From your book of business for a prospect. Select Add account, then Research <company> now. Keep real records separate from the fictional sample. For the whole path from the website to a governed agent, see Run a company through DutyGraph.
Connect your services
Open Settings › Research & AI keys. Enter the provider key and save while signed in to your advisor account. No account password is requested. Keys are encrypted with AES-256-GCM on the server, bound to the account/provider, and never returned to the browser. Saving does not call the provider. Select Test to check that the provider accepts the key. The test reads your account and sends nothing. Hosted accounts never share an operator's paid key.
A firm key does not apply to a company by itself. Each company must approve an AI connection before the Repo Copilot or the reading of answers can use AI:
- Open the company, then Settings › Connections.
- In the provider's row, choose Firm key (approve for this company) as the connection source. Or enter a company-only key.
- Select Approve firm key for this company.
When a company has approved connections for both Anthropic and OpenAI, DutyGraph uses Claude for the Repo Copilot and for reading answers. Other AI features use OpenAI. The fictional sample company never uses AI connections.
| Service | What to enter | Where to try it |
|---|---|---|
| Exa | Exa project API key | Company Research (a backup research source) |
| OpenAI | OpenAI project API key, model and reasoning effort | Discovery, Strategy, transcription, and the Repo Copilot when the company has no Claude connection |
| Anthropic (Claude) | Anthropic API key and an optional Claude model | The Repo Copilot and the reading of answers |
| Resend | Resend API key and an email address on a domain verified in Resend | Open a participant request → Send invitation email |
Provider billing and account spending limits are managed with each provider. Removing a saved key stops subsequent calls using it; an already-started provider request may finish. The OpenAI connection used by the development assistant is separate from your application's credentials. Do not send API keys through chat or put them in repository files.
The separate Neo4j company graph section accepts your Aura URI, database username, database name and database password. Use the neo4j+s://…databases.neo4j.io address from Aura. Saving enables metadata sync for companies in your advisor account. Test connection verifies the database, and Build company graph requests a current projection. Original records remain in PostgreSQL; full evidence text and recordings are not copied. Removing the connection stops later access without deleting copies already in Aura. The pilot advisor account's connection and projection were verified on September 6, 2026. New accounts must save and test their own connection.
Research a real business before the first meeting
Open Discovery. The Plan shows 4 steps: Company Research, Executive Kickoff, Team Discovery and Solution Analysis. The current step has one primary button for the next action. Below the Plan, the workbench keeps its 5 working steps: Research & contact, Leadership meeting, Review the team, Team interviews, and Review task cards. The app carries the relevant sources forward. You do not select evidence checkboxes in this journey.
Start with the shared compact company snapshot and its proposed business streams. Review the public findings, then draft the preparation email to your point of contact. Save and preview it before sending the private link. The contact opens the kickoff preparation page without an account: they can correct the snapshot, upload a CSV or add the roster manually, connect managers, nominate executive attendees and pilot participants, and share leadership context by typing or voice. The advisor reviews the returned package before importing people or preparing the two-hour leadership meeting.
After the meeting, save the guided notes, review the team dossiers, create one tailored work request per selected pilot participant, and choose which recipients to email. The send review lists the exact people and addresses; previewing or saving a request does not send it. Work response links also open without an account. Each recipient can type or record a response, transcribe a short clip when enabled, review the text, and send it. The advisor then reviews the account and task cards, resolves gaps and ownership, and confirms the exact current work when needed.
Read From Company Research to confirmed work for each button and handoff. Research runs inside the budget of their authorization. Provider charges apply.
Invite someone to answer questions
- Add or review the person with their correct email address. Prepare a work-capture or exact-task confirmation request in Discovery.
- Review the questions, recipient, due date and privacy notice. For a team batch, select the people explicitly and use the review screen to check the final recipient list. Configure Resend's verified sender in Settings first.
- Open the request and click Send invitation email. This is the action that sends email; preparing a request, previewing the response form or generating a manual link does not send one.
- A successful API response appears as Accepted by Resend. Inbox delivery, bounce tracking and reminders are not implemented yet. If the outcome is unknown, check the Resend dashboard before sending again. There are at most fifty attempts per account per rolling 24 hours.
- The recipient opens the private seven-day link without an account or password, reads the notice and answers the assigned questions. They can type or record up to three minutes per clip. When enabled, Transcribe into my response adds editable text; they review it before sending. The recording stays in the page until it is transcribed or discarded. Text drafts save on the same device. A failed transcription keeps the recording and allows another attempt or a typed answer.
- After submission, the advisor sees the returned request in Discovery and reviews it. A response records the person’s account; it does not confirm company ownership, approval or permission to automate. Task cards remain proposed until the advisor reviews them and obtains any required exact-version owner and performer confirmations.
When email is not set up, the composer offers Create a private link instead of sending. You can also generate a private link and share it yourself. Every replacement link revokes previous unused links for that request. Withdrawing a request revokes unused invitations and blocks new replies. Links are bearer secrets; do not forward them to someone else. Use Preview email to inspect the branded HTML invitation before sending. The email includes the company, the recipient's role, the actual request questions, preparation instructions and a private response link. Replies and full task records are not included in invitation emails.
What is still unfinished
Firecrawl, email delivery webhooks/reminders, password recovery, verified identity/SSO/MFA, full production retention/deletion, external authority integrations and governed customer-system execution remain open. The graph uses a custom SVG view, with an optional current Neo4j Aura projection and PostgreSQL fallback. The pilot advisor account's live Aura projection and repeat rebuild were verified. Hosted operation and passing tests do not certify the full original production specification.
Provider adapters have automated simulated-response tests. Actual AI quality, Exa results and email receipt require live acceptance with your configured accounts. No live paid AI/search calls or real invitation emails were made during this release verification.
Current model choices
New OpenAI configurations default to GPT-5.6 Sol with medium reasoning. GPT-6 Astra, GPT-5.6 Terra and GPT-5.6 Luna are also available; legacy configurations remain selectable. The chosen model and reasoning effort apply to meeting briefs, task drafts and hypothesis drafts. Exa performs source collection separately. Modern model calls allow up to 12,000 output tokens including reasoning, with a 105-second provider timeout. High reasoning can take longer and cost more; no automatic model downgrade or retry occurs. Model access depends on your OpenAI project.
Claude connections can pin Claude Sonnet 5.5, Claude Opus 5.5 or Claude Haiku 4.5. With Recommended, the Repo Copilot uses Claude Sonnet 5.5 and the reading of answers uses Claude Opus 5.5. No live Claude call is part of the automated tests.
API IDs and reasoning support were checked against the official OpenAI model catalog on September 5, 2026. This update is verified with adapter contract tests, not a claim of live output quality from your key.
Audio transcription
Transcription uses the advisor account’s encrypted OpenAI key and the gpt-4o-transcribe speech model. It is separate from the reasoning model chosen for Discovery. Recordings can be up to 25 MB. The app permits up to three transcription attempts per recording and fifty per account in 24 hours. Completed jobs are reused. Failed or uncertain attempts do not retry automatically. Review the text for names and numbers before submitting. Provider response text is bounded; audio content and provider diagnostics never appear in application errors.
The original clip keeps its checksum and request/person link. The unedited machine transcript is retained with its source recording; retention clears that job result when the recording expires. A participant’s submitted, reviewed text becomes part of the response and can be accepted into evidence. Browser microphone behavior, paid transcription quality and inbox delivery still require acceptance with the configured accounts. Automated tests use synthetic providers and send no email.
If a participant sends audio without written text, open the returned response and create its transcript. Compare it with the recording, correct any errors, then choose Save reviewed transcript as evidence. Discovery can now use that text to prepare the next step. The original response and recording remain unchanged. A second copy is not created when the same review is saved again.
Start here: what Duty Graph does
Duty Graph helps an advisor turn conversations and source material into a reviewable description of how a company works. The advisor connects evidence to people, tasks, handoffs, problems, measurements, and decisions. A client receives a report that states what was learned, what remains uncertain, and who owns the next action.
Release 0.3 is a hosted advisor pilot with PostgreSQL persistence. It supports a human-led engagement, password-free kickoff and work-response links, and manual workflow observation. External provider quality, enterprise identity, customer-system authority and execution acceptance remain separate concerns. The application will not perform business actions in customer systems.
The problem it helps solve
People often describe the same process differently. A manager may say that Finance approves a supplier while Finance says it only checks bank details. Drawing an arrow between the two teams does not resolve that difference. The advisor needs to preserve both accounts, find the governing evidence, and ask the right people to confirm a precise description of their work.
Duty Graph keeps those distinctions visible. A source can be accepted into the record without proving every assertion in it. A task can be reviewed by an advisor without being confirmed by its owner and performer. A confirmed task can be proposed for assistance without granting an agent permission to execute it.
The engagement in eight moves
- Prepare and bound the work. Research public context, prepare a draft for the team to correct, and name the outcome, scope, sponsor, source policy and review cadence. Exa source collection is optional and requires operator configuration; the advisor writes the initial synthesis.
- Gather accounts. Review the roster, nominate kickoff attendees and pilot participants, issue private links to selected recipients, and collect typed or recorded responses.
- Review evidence. Check the original, its locator, its origin, and the limits of what it supports.
- Describe the work. Write task cards, identify accountability and performance, define duties and receiving checks.
- Confirm and connect. Ask the named people to review exact task versions; assign duties and tasks to saved business stages; use the Work Map to follow stage → person → duty → task → flow.
- Test the explanation. Record a constraint hypothesis, competing explanation, metric, intervention, and outcome.
- Review progress. Observe manual cases, resolve exceptions, and assign the next useful action.
- Deliver a reviewed record. Freeze a client report, review its audience and contents, download it, and arrange delivery through your approved channel.
For the same journey as screens and buttons, from a company's website to a governed agent, see Run a company through DutyGraph.
These moves may repeat. Discovery often reveals a missing owner or contradictory source. That is useful information to resolve, not a reason to fill in a convenient answer.
Where the work happens in the app
Each company has 5 main pages in its sidebar:
- Overview is the Company Snapshot, the company's front page. It shows what DutyGraph knows, how sure it is, the constraints found, the automation candidates, and what DutyGraph needs from the client. Use Print / Save as PDF to give it to a client.
- Repo is the Company Repo, the advisor's workspace. It shows the company as a tree of files, each with a state and its sources. The Repo Copilot beside the files answers questions, finds gaps, proposes edits and drafts asks. See The Company Repo and the Copilot.
- Discovery is where you ask people. The Plan shows 4 steps and the one step to do now. The Asks tab holds the queued and the sent asks. See From Company Research to confirmed work.
- Work Map draws the value chain, the work flows, each person's Task Cards and who is accountable (RACI).
- Reports holds the Client Brief and Download your company.
After the Work Map, the sidebar follows the rest of the loop: Opportunities (where your team's time goes, the proposed agents and the time they could give back), Agents (build an agent and export it to the client's AI tool), Outcomes (measure whether the change worked) and Strategy (look ahead). See Opportunities.
The Snapshot, the Repo and the Work Map read the same record. An answer that arrives does not change a file's state by itself. It waits in Repo › To review until you accept it.
The main records
| Record | The question it answers | Example |
|---|---|---|
| Engagement | What are we here to understand and improve? | Standard order intake through release |
| Person | Who is in the engagement roster? | Jamie Park, fulfillment lead |
| Evidence | Where did this account or observation come from? | Order checklist, exhibit A, steps 1–3 |
| Task | What happens when a trigger occurs? | Check the incoming order |
| Duty | What continuing responsibility groups this work? | Prepare standard orders for fulfillment |
| Handoff | What must be true before the next task accepts work? | Complete intake checklist received by credit reviewer |
| Workflow | Which reviewed tasks and handoffs form the sequence? | Standard order review and release |
| Case | What happened to one instance of that workflow? | TRAIN-002 is missing a customer reference |
| Constraint hypothesis | What might limit the overall result? | Incomplete intake may create the longest wait |
| Metric | How will we observe the result? | Median hours from intake to release |
| Intervention | What change and prediction will we test? | Try a complete-intake checklist |
| Outcome review | How did observations compare with the prediction? | Inconclusive after one small practice cohort |
| Agent proposal | What assistance could be considered for specific work? | Draft a completeness checklist for human review |
| Client report | What should this named audience receive? | Executive findings and next actions |
The Work Map views
The Work Map has 5 tabs: Value chain, Work flows, Task Cards, People and RACI.
Value chain starts with saved business streams and stages. Select a stage to highlight people whose recorded work belongs there, then inspect their duties and tasks. Reporting lines come from the roster. Stage links, responsibility and manager relationships describe different things; none grants approval.
Work flows shows recorded task order and handoff conditions. Choose a workflow and inspect an arrow to read what the next person needs. A nearby card or arrow layout is not evidence of an unrecorded process.
Task Cards provides the detailed task cards, filters and supporting registers. Open a task or duty to inspect its evidence, human checkpoints, versions and related records. Agent proposals and controls have their own governance tools.
People shows who holds which work (By stage) and the full reporting chart (Reporting lines). RACI shows who is accountable for each Task Card. These views replace the separate Connected, Org & duties and graph/control tabs. Open Reports for the Client Brief: coverage, findings, commitments and a report for a named audience. The graph is an inspection tool; it does not create truth, authority or causation.
Four distinctions to teach every participant
| Distinction | Practical meaning |
|---|---|
| Account and fact | A person’s statement is evidence that they reported something. Corroboration may still be needed. |
| Review and confirmation | The advisor reviews completeness. Named participants confirm their exact described work. |
| Work and permission | Describing an action does not authorize a person or an agent to take it. |
| Observation and cause | A better metric after a change does not, on its own, prove that the change caused it. |
The labels Known, Inferred, Assumed, and Missing help explain the advisor’s basis. Use Known for what the cited source directly establishes. Use Inferred when connecting observations. Use Assumed when an untested premise is necessary. Use Missing when the needed information has not been collected. These are review labels, not automated truth scores.
What the client sees
A normal delivery is a readable executive or weekly report with scope, coverage, findings, decisions, next steps, limitations, and selected work records. It includes version and source identifiers so the advisor can trace it back to the workspace. The report ZIP also includes structured JSON, a CSV register, a read-me, and file checksums.
Raw interview text, recordings, participant credentials, invitation links, and person email addresses are excluded from client-report fields. Free-text findings are still written by the advisor, who must check them for unnecessary sensitive material before approval.
Internal workspace snapshots, confirmed-work packets, and agent proposals serve different audiences. They are implementation and review artifacts. The advisor should not send an internal package to a client simply because it downloaded successfully.
How to learn the product
Open Help in the left rail for this handbook. Start with Discovery. Use the clearly labeled Cobalt guided example or the generated Northstar Parts training company to inspect synthetic examples. Use a separate blank training company for practice. Then complete the Training workbook and compare your reasoning with the Facilitator guide. The Full user manual is the reference for screens, fields, states, recovery steps, and limits.
For technical installation, backup, recovery, and release acceptance, use the repository’s OPERATIONS, ARCHITECTURE, SECURITY, and VERIFICATION documents. These operational checks remain distinct from an advisor’s review of the business record.
Guided walkthrough: your first engagement
Allow 60–90 minutes for this walkthrough. A facilitator can extend it into the half-day workshop in the Training workbook. All Northstar Parts names and measurements are fictional. The example is a learning exercise, not evidence of business results.
Before you begin
Open the local application at http://localhost:4317. To inspect the supplied demonstration, open Settings › Workspace → Explore a fictional company → Open my sample company. Use the company switcher at the top of the company sidebar to open the clearly labeled Cobalt sample or the generated Northstar Parts — Advisor Training company. If Northstar is absent, ask the operator to run npm run training from the repository; that creates a new synthetic company and regenerates the example files. It does not replace Cobalt.
To practice writing records, add a separate company: on Home, select Add a company (it opens Companies › Add account), choose Already engaged in DutyGraph so Discovery opens, and select Add account. Name it “Northstar practice — your initials.” Do not edit the completed example while a class is using it. In a hosted client engagement, setup, identity assurance, data policy, and deployment acceptance would need to be completed first; this walkthrough uses the local training installation.
Page names in this walkthrough
This exercise uses the record tools directly. The current app places them here:
| This walkthrough says | Open |
|---|---|
| Engagement scope, people, requests | Discovery (the workbench below the Plan) |
| Task cards, duties, handoffs, workflows and cases | Work Map › Task Cards and Work Map › Work flows. Open a workflow record to start a case. |
| Strategy | Strategy in the company sidebar |
| Weekly review | Outcomes in the company sidebar |
| Client brief | Reports |
The Company Repo shows the same records as files. After each step, open Repo to see the file and its state change.
1. Understand the assignment
The fictional client sells parts through one depot. Standard orders go from intake to credit review to release. The sponsor wants fewer delays without weaker credit controls. The advisor must determine whether incomplete intake is responsible for waiting, or whether credit-review capacity is the better explanation.
Payment execution, changes to customer credit limits, production credentials, and automatic release are outside this exercise.
Expected result: a bounded engagement with an unresolved hypothesis, a measurement plan, explicit work ownership, and a client-ready explanation of what is known and what remains uncertain.
2. Create the engagement and roster
- Open Discovery, then select Engagement scope.
- Create the engagement plan. Enter the outcome, dates, systems, locations, in-scope work, exclusions, source policy, visibility, retention expectation, review cadence, and timezone.
- Save, inspect the record, and record your review rationale.
- In Discovery’s people view, add the four people below. Add managers before their direct reports, or use the CSV preview and import flow.
- Return to the engagement record and select Alex as sponsor if the roster did not exist when you created it.
| Person | Role | Team | Reports to |
|---|---|---|---|
| Alex Morgan | Executive sponsor | Leadership | Not recorded |
| Jamie Park | Fulfillment lead | Fulfillment | Alex Morgan |
| Sam Rivera | Order specialist | Fulfillment | Jamie Park |
| Robin Ellis | Credit reviewer | Finance | Alex Morgan |
Use unique fictional email addresses when practicing enrollment. Local participant accounts are linked to one company and person; do not reuse a participant email from another training run. Use an address at training.invalid for a manual exercise and avoid sending messages to real people.
Checkpoint: the roster has four unique people. A total fictional headcount of 24 does not change the engagement coverage denominator of four.
3. Capture the sponsor’s account
Before collecting the account, open the Company Research step and review what research would cover. For this fictional exercise, do not search for Northstar or spend provider credits: use the workbook exhibits as manual sources. For a real authorized engagement, collect and inspect public context first, draft your questions, and ask the sponsor to correct the initial picture during kickoff.
- In Discovery, use the saved business snapshot and choose Alex as the contact, with a due date and four or five kickoff questions. The default five cover customer value, output, demand, flow, and authority.
- Save the reviewed request and open Preview response form. Review the notice and questions before sending.
- Choose the link-issuance action. No email is sent by issuing a link. Copy the URL only into the approved training browser session.
- Open the link in a separate browser profile. The current kickoff form needs no account or password. Keep the advisor session open in the original profile.
- Enter this fictional account: customers value complete orders arriving on time; output is a released standard order; demand is sufficient for the exercise; work sometimes waits for missing fields and a credit-check handoff; exceptions require Jamie’s review.
- Submit. Back in the advisor session, refresh Discovery, open the returned response, inspect it, and accept it.
Checkpoint: the original response remains visible. Acceptance creates an evidence record tied to that submission. It does not confirm any task or authorize automation.
4. Review two more sources
Add an evidence record named “Training order checklist,” classified as a policy document. Its text says that intake must contain the item, quantity, and customer reference; credit review records a result; release requires a complete checked packet. Use locator “Training workbook, exhibit A, steps 1–3.” Accept it after inspection.
Add “Training queue observations” as an execution record. Its fictional baseline is a median of 10 hours for 20 standard orders; a practice cohort of 20 has a median of 8 hours. Credit review remains under one hour. Use locator “Training workbook, exhibit B, rows 1–40.” State that these are invented training aggregates with different product mix and small samples. Accept the source.
Keep the two source origins independent. Copying the checklist into a second evidence record would not create a second independent source.
5. Describe three task cards
This exercise teaches manual task creation and exact-version company confirmation. For the newer participant-first interview flow, use Review your task cards before sending or the interactive discovery demo.
Open Work Map › Task Cards and add the following work. Use Jamie as accountable owner for all three; use Sam as performer for intake and release, and Robin for credit review.
| Task | Trigger | Required input | Output |
|---|---|---|---|
| Check the incoming order | A standard order arrives | Item, quantity, customer reference | Complete intake checklist |
| Record the credit-check result | Intake is complete | Checklist and customer reference | Recorded pass or exception |
| Release the checked order | Passing result is recorded | Complete checked packet | Human-recorded release |
For every card, enter a concrete purpose, instructions, systems, described actions, denied actions, human checkpoint, supporting evidence, review date, and reason. Use duty “Prepare standard orders for fulfillment.” Use human-only mode in this exercise. Deny automatic release, credit-limit changes, and use of production credentials.
Review each task after resolving required information. The state becomes Awaiting confirmation. Editing a reviewed task creates another version and requires renewed review; do that before sending confirmation requests.
6. Confirm the exact work
- In Discovery, create a confirmation request for Jamie covering all three reviewed tasks.
- Create a request for Sam covering intake and release, and another for Robin covering credit review.
- Issue each private link. In the participant sessions, inspect every task and choose Correct only if the card describes that fictional role accurately.
- Submit each request. In the advisor session, inspect and accept each returned response.
- Refresh Work Map › Task Cards and check the confirmation history.
Checkpoint: all three tasks show Human confirmed. This requires current accepted “correct” responses from the owner and performer; where the same person holds both roles, one matching response suffices. A facilitator playing fictional roles is acceptable for training, but those scripted decisions are never evidence of real customer confirmation.
Try choosing Needs change in a separate practice request. Accepting that response opens a conflict on the current task. Resolve the wording with the participant, revise the task, review it, and request confirmation of the new version. Do not relabel disagreement as agreement.
7. Inspect the company views
Open Work Map › Value chain. Select a business stream and stage, then select Jamie in the highlighted organization. Inspect Jamie’s duties and tasks. Use Assign stages to place a duty or task explicitly; a task’s own assignment overrides inherited duty stages. Open Work flows for recorded handoffs and Task Cards for detailed cards and source records.
The Work map reporting chart places Alex above Jamie and Robin, with Sam under Jamie, using the roster relationships you entered. These are not inferred from titles. Missing manager relationships remain unlinked. Open Reports for the Client Brief to see coverage and prepare a reviewed report from the saved work.
8. Define the duty and handoffs
On Work Map › Task Cards, create the explicit duty record “Prepare standard orders for fulfillment.” Name Jamie, connect the three tasks and the accepted checklist, and review the claim. This duty review is separate from task confirmation.
Create two handoffs: Intake to credit review, and Credit result to release. Select the source and receiving tasks. Specify the condition, output mapping, required input, receiving acceptance check, exception owner, timeout, retry ceiling, and failure action. Use Jamie as exception owner, 24 hours as the escalation period, and one retry in the handoff description. Attach the checklist and review each handoff.
Checkpoint: a receiving person can explain exactly what arrives and when to reject it. A title such as “handoff to Finance” alone is insufficient.
9. Observe two manual cases
On Work Map › Work flows, select Create workflow. Create “Standard order review and release,” select the three tasks and two handoffs, use All for joining selected routes, a 24-hour step timeout, and two maximum attempts. Review the definition.
Open the workflow record and select Start case for TRAIN-001 with the fictional order reference. Only intake is initially ready. Record the human observation, select the outgoing route whose condition was met, and complete the step. Repeat for credit review and release. The case becomes Complete.
Start TRAIN-002. Record a failure at intake because the customer reference is missing. It should need attention while downstream work stays blocked. An advisor can record a bounded retry after the missing information is resolved, or close the case with a reason. No order is changed in an external system by these controls.
10. Record a testable explanation
In Strategy, create a constraint hypothesis: “Incomplete intake may delay order release.” Record the competing explanation that credit capacity is the constraint. The discriminator is a comparison of intake waiting and credit-review duration in matched cohorts. The global counterfactual concerns end-to-end release time and total released orders, not merely faster data entry.
Define a metric: median release timestamp minus intake timestamp, measured in hours for the specified cohort. Enter baseline 10, target 7, source, owner, window, and a guardrail against incorrect release. Record a dated observation of 8 with its synthetic source locator.
Create an intervention for a complete-intake checklist. Preserve the prediction “10 hours to at most 7 hours without more credit exceptions.” Create an Outcome review with Inconclusive: the invented result misses the target, the groups differ, and causation is unproven. Review it and assign the next measurement action.
Checkpoint: the report does not claim a proven 20% improvement for a real client. It explains the arithmetic as an invented training observation and keeps the original prediction intact.
11. Run the review and prepare delivery
Open Outcomes for the weekly review. Discuss returned evidence, stale or conflicting work, missing baselines, workflow exceptions, and outstanding commitments. Record Jamie’s next action and due date.
Open Reports, then choose Prepare client report in the Client Brief, and name Alex and Jamie as the fictional audience. Review and refine the suggested purpose, summary, decisions, next steps, limitations and selected records. Save the frozen draft, open its preview, and inspect every section.
Approve the exact current content and audience with a rationale, then download the ZIP. Open client-report.html; print it to PDF if desired. Inspect record-register.csv and checksums.json. The package omits original response text and recordings. Delivery remains manual.
12. Finish the handoff
Record who owns the next review, the outstanding evidence questions, and the limits of the current result. Store the approved package using the engagement’s agreed policy. Ask the operator to take an encrypted backup and perform the documented restore drill before any important installation change.
You have now practiced the entire supported advisor journey. Repeat it with the adverse scenarios in the Training workbook before moving to an accepted customer environment.
Full user manual
This manual describes DutyGraph 0.3, the hosted advisor pilot. It covers the app shell, the Company Snapshot, the Company Repo and its Copilot, the current Discovery journey, password-free response links, AI connections, record lifecycle, the Work Map, strategy, workflow observation, reporting, and recovery. The generated record-field reference and operator runbooks accompany it in the portable handbook.
1. Accounts and access
Advisor accounts can manage companies in their own tenant, inspect the company’s records, issue participant requests, review evidence and work, and generate deliverables. An advisor is an application role; it does not establish authority over a client’s business systems.
Participant accounts can access their assigned company and requests. The participant view omits the general workspace, other participants’ accounts, raw advisor evidence, and administration. Task snapshots sent for confirmation include only the fields needed to review the described work.
Choose Create an advisor workspace on the sign-in screen and enter your name, email, a password of at least ten characters, your firm's name and postal address, and optionally a reply-to address. Your firm is the sender of every client email, so these details appear in their footer. The workspace opens on Home. Add or import client companies on Companies. To set up a workspace for your own company instead, choose Setting up a workspace for your own company instead? and enter the company name, scope and desired outcome. Registration creates a separate tenant. The local pilot does not verify email ownership, provide SSO/MFA, or implement self-service password recovery. A private invitation is a bearer link and must be handled accordingly.
Sessions expire after twelve hours. On expiry, sign in again and refresh before retrying a save. The application stores session tokens in HttpOnly, SameSite cookies and requires a session-bound token on authenticated changes. Do not share a browser profile across real participants.
The sample entry is available only when the operator enables the demo. It opens a shared synthetic advisor account. Use it only for fictional information. The company selector switches among companies belonging to that account. New workspace creates another bounded company; it does not erase the current one.
2. Navigation and common controls
The left rail holds the portfolio pages:
| Rail item | Use it for |
|---|---|
| Home | What needs you across companies, your companies and prospects contacted in the last 14 days |
| Inbox | One row for each item that needs a decision, with its next action. Each team answer that comes back has its own row. Review answer opens it in Repo › To review |
| Companies | Accounts: add, import and open companies; contacts, outreach, research and activation |
| Settings | Workspace, Research & AI keys, MCP access, Connections, Members & roles, Company account and Billing |
| Help | Help & Training: this handbook, the walkthroughs and the examples |
The company sidebar holds the pages of the selected company:
| Sidebar item | Use it for |
|---|---|
| Overview | The Company Snapshot, the company's front page (section 3) |
| Repo | The Company Repo and the Repo Copilot (sections 4 and 5). The badge counts answers to review |
| Discovery | Plan, Asks and Sessions: the 4-step plan, the composer and the ask queue (section 6) |
| Work Map | Value chain, Work flows, Task Cards, People and RACI: business stages, people, duties, Task Cards, flows and who is accountable |
| Opportunities | Your team (each person's Task Cards in hours a week, Current process or With proposed agents, and the capacity back), Proposed agents, Possible constraints, Theory of Constraints, Changes and What AI can do today (Opportunities guide, Route guide) |
| Agents | Workspace (it opens first: the agent builder), Saved agents, Requests, Review queue, Issued agents, Rules, Audit and Business review: the builder and its exports, the saved agents with their version and freshness, agent governance (on the Wesco sample) and the agent requests that were on Governance (Agents guide) |
| Outcomes | Results (weekly review, decisions and commitments) and Measures (define a measure before predicting a change) |
| Strategy | Summary and Frameworks: the forward-looking framework analyses |
| Reports | Prepare (the report catalogue with readiness and Preview, and the Client Brief) and Saved (saved snapshots and Download your company). Roadmap reports are in a collapsed Planned list |
A prospect's sidebar shows only Overview, Repo and Reports. Discovery and the Work Map open once the engagement is active. Record the commitment in Settings › Company account.
The page header shows the company, one status line, search, and one Next button with the company's next action. The Repo has no Next button. Settings applies either to every company in the workspace (Workspace, Research & AI keys, MCP access) or to the selected company only (Connections, Members & roles, Company account, Billing). The header says which.
Older addresses still open: #deliverables opens the Client Brief and internal exports, #weekly opens Outcomes, #tasks opens Work Map › Task Cards and #workflows opens Work Map › Work flows.
Use the search in the page header or Ctrl/Cmd+K to find a record of the selected company by title. Use page-specific filters to narrow lists. Open a row to inspect details; edit controls appear only for directly editable kinds. Close a dialog with its close button or Escape. The modal keeps keyboard focus within it and returns focus when closed.
The avatar menu at the bottom of the rail switches between graphite and light mode. The preference is saved in this browser. From 760 to 1,279 px the company sidebar shows icons only. Below 760 px a bottom tab bar replaces the rail, and the company sidebar opens from the menu button. Graphs and wide reference tables may scroll within their panels; they should not force the whole page wider than the screen.
Changes are server-backed. A successful save means the API committed the record and associated audit/outbox data. A toast or error remains visible when a command fails. Refresh after a version conflict and compare current content before retrying; do not repeatedly submit an old form.
3. The Company Snapshot (Overview)
The Company Snapshot is the company's front page. It is for the advisor and for a client executive who receives it.
- The header shows the company, the state of what DutyGraph knows ("43 of 46 key facts found · 0 confirmed by the client · 1 disputed · 0 of 37 Repo files filled"), the company summary with its label, and the engagement phase.
- Constraints found lists the recorded constraint hypotheses with their state, for example "Hypothesis · not tested", and up to 2 signals labelled "Signal · not recorded". A hypothesis is never shown as signed.
- Automation candidates lists Task Cards with a proposed AI mode. The proposed mode comes from the Task Card. It is not an approved agent.
- What we know is one table of facts with value, state and confidence. A disputed fact shows the competing values.
- What we need from you lists the disputes to settle, the open and drafted asks, the people not heard from, the team list, the key facts to confirm and the facts not found. Each item links to To review, Asks or Discovery.
- Discovery progress and Coverage in the Company Repo show each area as confirmed, reported, inferred and disputed files.
Select Print / Save as PDF to print the page or save it as a PDF from the browser. The print uses light colours and hides advisor-only items. Share links are Planned.
4. The Company Repo
The Company Repo shows the company as a tree of Markdown files. DutyGraph compiles the files from the database. The Repo is not a second store. Each file has a state: Confirmed, Observed, Inferred, Disputed, Unknown, Proposed, Slot or Generated. A confirmation is recorded in DutyGraph, not signed.
The Repo has a toolbar (Files, To review, the summary, Download, ⋯), a Layer row (Company & market, Leadership, Departments, Team, Work), and 3 panes: the tree, the open file and the Copilot. The file bar has History, Pin to context and Details. Details has the state, the sources, the known gaps and the next step, with Ask the person responsible. To review lists the answers to review, the proposed work and the research findings. Each item has one sentence that says what to decide.
Each file states its layer in the layer key of its frontmatter, and the Layer row selects files by that key. The files link up, down and across: from the strategy and its initiatives, to each department's mandate, to duties, roles and Task Cards, and across to handoffs and workflows. DutyGraph computes the links from records and accepted answers. Details lists them under LINKS in 3 groups, Up, Down and Across. A link that nobody confirmed shows Proposed. Initiative files (company/initiatives/), the Mandate section of each charter and handoff files (flows/handoffs/) come from these links. Each workflow file has a proposed execution mode: people only, people and agents, or agents only.
The files that research fills (news, competitors, hiring, detected technologies, the company profile) have a refresh: block with the plan, the cadence, the sources and the last and next check. Refresh now in Details researches the file's fields again. A refresh never changes a confirmed fact.
Download (and Download your company on Reports) downloads every file with its state and sources. The ⋯ menu has Copy MCP URL for an AI tool that reads the files through the DutyGraph MCP server. Push to GitHub is Planned.
See The Company Repo and the Copilot for each control.
5. The Repo Copilot
The Copilot is a panel beside the files. It has 4 modes: Ask, Review, Edit and Draft an ask. The open file is its context by itself. You can add up to 20 files. Every request also carries the company brief (company/brief.md), a generated summary of the company.
The Copilot also reads the chain of its anchor: the strategy, initiative, mandate, role and duty above it, the Task Cards and runbooks below it, and the handoffs across. The anchor is the person you select in the org chart, the department you select on the Layer row, or the open person, role, duty, Task Card or department file. The panel shows "Anchored on: <name>" and the path from the strategy to the anchor. Select × to clear the anchor. A Layer row stop sends a summary of that layer.
The Copilot only proposes. An Edit proposal changes nothing until you select Accept. On a record file, Accept saves a new version of the record. On another file, Accept saves the text as Notes, labelled as an advisor draft that the company has not confirmed. Draft an ask saves nothing until you select Add to Discovery queue. The queue does not send anything.
The Copilot works only for a company with an approved AI connection (section 7). The fictional sample company never uses AI connections. See The Company Repo and the Copilot.
6. Discovery: the Plan, the composer and Asks
Plan shows the 4 steps: Company Research, Executive Kickoff, Team Discovery and Solution Analysis. The current step is a wide card with one primary button. Done steps show their date from the records. Waiting steps say what unlocks them. Below the Plan, the workbench keeps the detailed forms of each step.
The Company Research step page shows the last run, Run research again, what research found, the sources, the facts kept because a person confirmed them, the company structure and the run history. A fact that a person confirmed always wins over new research. A new run keeps the Repo's file structure. Rebuild the company structure proposes a new structure and deletes nothing.
Refresh by file on the same page lists the 5 refresh plans with Refresh now. Keep research current refreshes due files on a schedule within a monthly cap. It is off by default. It skips the sample company, sandbox companies, closed accounts and companies without a research source.
The composer edits the questions and the email wording of an ask. It shows the real email in a preview window, or in a third column on a wide screen. Send batch sends behind the send gate. When email is not set up, use Create a private link. DutyGraph refuses an answer-by date in the past.
Asks lists Queued asks (unsent drafts) with Review and send and Remove, and Sent asks.
See From Company Research to confirmed work.
7. AI connections
Save AI keys in Settings › Research & AI keys: OpenAI, Anthropic (Claude), Exa and Resend. Select Test to check a key. A company uses AI only through an approved connection in its own Settings › Connections: a company-only key, or the firm's key approved for that company with Approve firm key for this company.
For the Repo Copilot and the reading of answers, DutyGraph uses the company's approved Claude connection first, then its approved OpenAI connection. With neither, the Copilot does not answer and the fill loop uses its rules only. Other AI features use OpenAI. Company Research, the first touch, the kickoff and the team questions work without AI.
A company-only key can be replaced or disabled. It cannot be removed now.
8. Engagement setup
There is no form for a company's scope, goal or participant notice. Each new company gets default values. The engagement record replaces the scope and goal with the client's own answers, and the discovery conversation can ask for anything else. The participant notice uses the standard DutyGraph text; people see it before they answer, and each issued request keeps the notice it was sent with.
In Discovery, select Engagement scope to record the scope of one review effort. Enter a meaningful title, sponsor, desired outcome, start/end dates, systems, locations, in-scope and out-of-scope activities, source policy, visibility expectation, retention expectation, cadence, timezone, and success criteria.
The sponsor may initially be unresolved. Add the person to the roster and revise the engagement when identified. Headcount is optional and distinct from the engagement roster. The end date must not precede the start date. Timezone uses an IANA name such as America/New_York.
Review the engagement with a rationale. The reviewed state records the advisor’s assessment. It does not establish a signed contract, consent from every participant, or enforce all policy fields. In particular, the engagement’s retention field records the agreement you intend to use; it does not reconfigure the current 30-day audio retention worker or create a legal hold. The operator must implement any different retention requirement before collection.
Coverage shows unique roster participants, unique people who returned or completed a request, confirmed tasks, and unresolved ownership/performance. Multiple requests to one person do not increase the unique respondent count. These measures describe this engagement, not company-wide representativeness.
The kickoff builder offers eight stable question topics. Choose four or five to keep the first conversation bounded. Request records preserve the selected question IDs and plan version. The operator should not treat these questions as a diagnostic verdict; they identify evidence and follow-up needs.
9. People and roster import
Each person has a name, email, role, team, optional manager, and optional external ID. Names and titles are descriptive. Manager fields drive the reporting chart. A person cannot report to themselves, and edits that introduce a reporting cycle are rejected.
Select Import people CSV in Discovery or on the Work Map to upload a team CSV, or add, edit and remove people manually. The point of contact can do the same in the Team & attendees panel of their private first-touch page. The CSV columns are name, email, role, department and manager_email. The preview identifies missing values, invalid addresses, duplicates, unresolved managers and cycles. Correct all errors before submitting the kickoff package. The contact can nominate executive kickoff attendees and pilot discovery participants from the valid roster; those selections prepare the advisor’s review and do not send invitations. Existing people are not silently merged by a matching display name.
The sample CSV shape is:
name,email,role,team,manager_email,external_id
Alex Morgan,alex@practice.invalid,Executive sponsor,Leadership,,TRAIN-ALEX
Jamie Park,jamie@practice.invalid,Fulfillment lead,Fulfillment,alex@practice.invalid,TRAIN-JAMIE
Review names and reporting lines after import. A duplicate email within a company is rejected by record creation. An external identifier is a reference value, not a login credential or proof of identity. The pilot has no automatic directory synchronization, alias reconciliation, or employee lifecycle integration.
10. Discovery requests
Before the first meeting: Company Research
Start Company Research from the Plan's Company Research step or from the company's account. One run covers the company profile and the Deep lanes (competitors, customers, partners, regulation and go-to-market). Research writes append-only evidence and sourced findings with a state and a confidence. It does not confirm facts, Task Cards or authority. A hosted company needs a connected research source. Locally, RESEARCH_SIMULATION=true gives simulated findings labelled as simulated.
Use Run research again on the Company Research step to look for new or missing facts. Facts a person confirmed are kept. Disagreeing research shows in Repo › To review. A run stays inside the budget of its research authorization.
Use Refresh now to research one file's fields again, for example the competitors. Use Keep research current to refresh due files on a schedule, within a monthly cap. See From Company Research to confirmed work.
The guided journey carries the company research into the first touch to your point of contact and into the leadership meeting guide. The contact's answers and the kickoff notes then supply the reviewed team list and personal asks. Read From Company Research to confirmed work for the current flow.
Request and response workflow
Requests are immutable assignments to one person. Choose Work account, Leadership, or Confirmation. Enter a title, questions, due date, notice, and—when confirming work—the exact reviewed tasks belonging to that person as owner or performer.
Save the draft, review it, then issue a private link. Link issuance changes the displayed state to Link ready. The underlying transport state is sent, but no email has been sent. The UI returns a manual URL. Give it to the intended person through the engagement’s approved channel, or open the request and use Preview response form to inspect the live fields without submitting them.
Kickoff and work-response links expire after seven days and are intended for the named recipient. They open without an account or password and close after submission. Reissuing an open request rotates its unused invitation. Used, expired or revoked links cannot be submitted; ask the advisor for a replacement.
Request due dates are evaluated through 23:59:59 UTC on the selected date. A request past its due date cannot be submitted. The engagement timezone is descriptive for planning in this release; it does not alter this enforcement or schedule messages. Set dates accordingly and create a fresh request when an extension is required.
If the questions or selected task version change, create a new request. Withdraw an obsolete open request with the available action. Its unused invitations are revoked. The record and historical response remain available for review; withdrawal is not erasure.
11. Participant capture
Kickoff and team work-response links open without an account or password. The recipient reads the notice, confirms they are the intended person, and sees only the assigned questions. A signed-in participant workflow remains available for older or exact task-confirmation requests; use the request type and page shown by the invitation.
A recipient can type a response or record a short voice clip. Recording requires browser microphone permission. Choose Record a voice response, stop the clip, listen to it, and choose Transcribe into my response when enabled. Review the editable text before sending. The clip remains in the page until it is transcribed or discarded; text drafts can be saved on the same device. Do not close the page before the response is safely submitted.
Typed and recording drafts may remain in local browser storage until submitted or explicitly discarded. A shared device therefore needs careful sign-out and draft handling. Server audio expires after 30 days under the current local policy; the worker removes stored chunks after expiry. Retained metadata and typed evidence have a different lifecycle. There is no comprehensive erasure or legal-hold workflow in this pilot.
Audio is held in the page until the recipient chooses transcription. No transcript is created automatically. The advisor must review the returned response and any transcript rather than treating a recording or checksum as proof of a company fact. Use typed responses for training environments without microphone access.
For confirmation requests, every assigned task needs a decision: Correct, Needs change, Not mine, or Unsure. Add an explanatory note for disagreement. Submit only after inspecting the exact text. Submission records the participant decision; advisor acceptance follows separately.
12. Responses and evidence
Returned responses appear in Discovery. Inspect the original text or available audio, the participant, request, and notice. Accepting a work/leadership response creates an accepted evidence record tied to that original submission. Accepting a confirmation response applies the recorded participant decisions to their exact task versions.
To add a source directly, record its title, type, content, person where relevant, source date, locator, origin, classification, and source bucket. Supported types include employee, leadership and customer accounts; policy documents; system configuration; execution records; company research (public web); and other documents.
The four source buckets organize information: business, leadership, calls, and organization. Use the source’s actual function. A manager’s opinion about permissions is not equivalent to a current policy or application configuration.
A locator should let a reviewer find the supporting passage or observation. Good examples include “policy section 4.2, paragraph 3” or “training register, rows 21–40.” “Interview” alone is usually insufficient. Origins identify independent sources; copies of the same original must retain a common origin when used in diagnosis.
Original evidence is immutable. If it is wrong or superseded, create a corrected source and retract the old one with a reason. Retraction preserves history, marks dependent records stale, and blocks affected client downloads. Review dependencies and generate fresh artifacts. A previously downloaded copy cannot be recalled by the application; follow the engagement’s distribution procedure.
Acceptance means the source has been reviewed for use. Known labels and accepted state do not automatically prove an allegation, establish authority, or resolve a conflicting account. Preserve competing evidence until the question is resolved.
13. Task cards and confirmation
A task describes one bounded piece of work. Enter the title, duty label, accountable owner, performer, purpose, trigger, inputs, instructions, output, systems, described allowed actions, denied actions, human checkpoint, stop conditions, evidence, mode, classification, review date, and change reason.
An incomplete proposed task can be saved while owner or performer is unknown. Review requires both people, supporting accepted evidence, no unresolved conflict, and a current review date. Do not invent a person to satisfy the form. Use the unresolved state as a discovery question.
| Displayed state | Meaning | Next action |
|---|---|---|
| Proposed | Definition has not completed advisor review | Resolve fields and evidence; review |
| Awaiting confirmation | Advisor reviewed the current content | Ask current owner and performer |
| Human confirmed | Both required roles have accepted correct responses for this exact version/hash | Use the current description within its scope |
| Conflict open | A conflicting claim or participant objection remains | Clarify, revise, and request fresh confirmation |
| Needs fresh review | Source, version, or review date is no longer current | Refresh supporting information and review again |
Content edits create immutable versions. Confirmation includes record ID, version, content hash, person, decision, and advisor acceptance. Old confirmations remain in history and do not silently transfer to new text. An advisor cannot click a task directly into Human confirmed on behalf of a real participant.
If one person is both owner and performer, one valid current response satisfies both roles. If either role changes, the revised card needs the new required people. The roles concern accountability and performance of described work; a task’s allowed-actions list is not an enforced permission policy.
Work modes include human only, AI assist, AI draft, AI recommend, execute with approval, bounded execution, and prohibited. These modes describe a proposal for the work. Selecting an execution mode does not connect or authorize a runtime. The governance screen will continue to report unconfigured execution.
14. Duties and handoffs
The free-text duty label on a task helps group work. An explicit duty record adds its own owner claim, purpose, scope, task membership, sources, review date, reason, version and review state. Create and inspect explicit duties on Work Map › Task Cards. A duty review does not inherit task confirmations or confirm every responsibility held by a person.
A handoff connects two different tasks. Enter the condition for transfer, exact output mapping, required receiving input, acceptance check, exception owner, timeout, maximum retries, failure action, sources and rationale. Review it against current task versions. An edit to a linked task or handoff can make the downstream workflow stale.
Handoff timeout and retry fields describe the receiving contract. The manual case engine uses the workflow’s step timeout and maximum-attempt settings. It does not independently run a handoff timer or trigger an external notification. Set both consistently and make the distinction clear in the engagement.
15. Graph and organization views
Work Map
The default Work Map follows stage → highlighted organization → person → duties and tasks → flow. Select a saved business stream and stage, then select a person to see the work recorded for that stage. The first stream is primary; later streams are supporting. The map uses the saved profile only as the stage vocabulary. It does not infer work from a title, department, reporting line, task name or legacy value-stage field.
Use Assign stages on a duty or task to place work in the map. Duties may be assigned to several stages. Tasks inherit a duty’s assignments through the duty’s explicit task IDs, unless the task has its own stage links. A task assignment then overrides inheritance; clearing it restores inheritance. Work with no stage, no owner or a link to a removed stage remains visible for repair. These assignments describe map membership, not approval.
The map has 5 tabs. Value chain connects stages, recorded people, duties and tasks. Work flows shows explicit task-to-task handoffs and their receiving conditions. Task Cards provides task cards, filters, complete work registers and supporting details. People shows who holds which work (By stage) and the reporting chart (Reporting lines). RACI shows who is accountable. Open an underlying record for evidence, related records, human checkpoints and version history. The former Connected, Org & duties and graph/control tabs are no longer separate primary choices.
In Work flows, choose a workflow to scope its steps. Alternate branches are layout choices, not claims about which path is usual. Select a connection to inspect its handoff condition. Missing handoffs stay missing. Pan and zoom, use Fit for the bounded flow, or Expand for more room. No executable order is invented from a stage or a list of tasks.
Open Reports for the Client Brief: inspect current coverage, gaps, findings, commitments and measures, then prepare an audience-reviewed report. Linked work does not establish complete coverage or a measured result.
Reporting chart uses recorded manager relationships. Missing relationships remain unlinked. Team membership, task accountability, and reporting hierarchy answer different questions. The enriched Cobalt fixture includes a small synthetic reporting chart; it is demonstration data and does not establish a real organization.
16. Workflows and manual cases
A workflow selects reviewed tasks and handoffs, an owner, purpose, join policy, step timeout, maximum attempts, and reason. The definition rejects cycles, duplicate paths, isolated tasks in multi-step flows, missing references, and invalid handoff conditions. This release models acyclic work; bounded retries happen on a step, not through a loop in the graph.
Review the workflow after its task and handoff dependencies are current. Review requires reviewed task descriptions and reviewed handoffs; it does not require participant-confirmed tasks to observe a manual case. Check the underlying task state when participant confirmation matters to your engagement.
Start a case with a title and input reference. The case pins the workflow version/hash and stores a copy of the definition. Root tasks become Ready; dependent tasks remain Blocked. Each step keeps attempt count, deadline, route choice and observer notes.
| Case action | What it records |
|---|---|
| Complete step | An advisor’s observation that the human work completed, with the routes whose conditions were met |
| Record failure | A failed or incomplete step and the reason; the case needs attention |
| Retry | Another manual attempt within the workflow ceiling; resets that step’s deadline |
| Close case | Cancellation with a reason; preserves the event history |
When completing a step with outgoing handoffs, choose at least one valid route. Unselected routes are skipped. An All join waits until incoming branches resolve and at least one active selected route exists. An Any join can proceed when one active selected route arrives. Use these deliberately: an Any join does not assert that every predecessor completed.
Past-deadline ready steps display escalation and cannot be marked completed without a permitted retry. Deadlines are derived from persisted timestamps, so application restart does not restart the clock. There is no background email escalation. A workflow or pinned work change blocks further progress until the definition is reconciled; an obsolete case can be closed with a reason and a fresh case started.
All case actions record human observations. They do not call an order system, release a supplier, execute an agent, or verify that an external side effect occurred.
17. Strategy and measurement
The framework registry defines the available analyses, source buckets, and upstream dependencies. In this release, the advisor writes the analysis, selects accepted evidence, saves it, and reviews it. The application pins exact source and upstream versions. Missing prerequisites block completion; changed inputs make downstream analyses stale. No provider-generated answer is represented as a completed analysis.
A constraint hypothesis records the pressure in one flow, a competing explanation, a global-throughput counterfactual, a discriminating test, supporting and disconfirming evidence, an owner, and a throughput unit. Record a test result before requesting diagnosis review. Readiness requires two independent accepted origins, a tested alternative, a discriminator result, and a measured baseline owned by the named owner. These are structural checks; the advisor must still judge test quality and causal strength.
The UI’s Reviewed diagnosis represents human review. The internal state name signed_constraint is not a managed cryptographic signature, permission grant, or proof of causation. Continue collecting disconfirming observations.
A metric defines the question, formula, unit, population, source, owner, baseline, target, observation window, missing-data reason, and guardrail. Unknown baseline is null with a reason, not zero. Record observations with a numeric value, timestamp and source locator. Observations are appended in new content versions.
An intervention links one candidate, owner and metric to a proposed change, prediction, stop conditions, and review date. Preserve the prediction before observing results. An outcome record freezes the intervention prediction and current measurement snapshot, then adds supported/falsified/inconclusive, window, coverage, confounders, interpretation, next action and sources.
Supported or falsified conclusions require observations. Inconclusive is appropriate when coverage or attribution is insufficient. Reviewing a falsified outcome returns the linked candidate to review-required state. The application does not rewrite the original prediction to match a result.
18. Agent governance
Open Agents › Business review (the old Governance page; #governance opens it). To build and export an agent manifest from a Task Card, use Opportunities › Proposed agents (Agents guide). Governed access requests, the approval chain and the audit are on the Agents tabs Requests, Review queue, Issued agents, Rules and Audit. They work on the Wesco sample only (Run a company through DutyGraph, step 8).
Create an agent proposal for named tasks under one accountable human. Tasks must share the selected owner. The proposal pins exact task versions and starts as Draft with empty requested, approved, provisioned and observed scope, and no runtime deployment.
Inspect the gap between the work description and actual customer authority. A title, reviewed task, org chart, application administrator account, or approved report does not supply business permission. Runtime preflight fails closed while identity, policy sources, signing and a tested target adapter are absent.
An agent package is a review artifact containing task instructions, constraints, exclusions, setup requirements and hashes. It does not contain usable grants or credentials, and cannot deploy an agent from this UI. Use the technical integration plan to scope a separately accepted connection.
19. Weekly review
Open Outcomes. Use the derived agenda to inspect returned responses, stale/conflicting tasks, missing baselines and manual cases needing attention. Check the broader record even when the exception list is empty: no recorded exception is not proof that every source or observation is current.
Create a decision/commitment with title, owner, decision, next action and due date. Open it later to mark completion after checking the result. Meeting decisions create follow-up work. They do not issue permission grants or send tasks to an external project-management system.
Bring the previous prediction, new observations, changed sources, open cases, and last commitments to each review. Write what changed, why the interpretation changed, and the next test. Generate the weekly client report after that review.
20. Client reports and internal exports
Open Reports. Client reports are Executive, Weekly or Audit packets. Enter the title, explicit audience, purpose, summary, decisions, next steps, limitations and selected records. Creation freezes the current contents and bindings in a Draft report. Draft preview is available for review; delivery download is blocked until approval.
Open the preview and check every selected record, state, date, statement, audience and limitation. Record an approval rationale for the exact version/hash. The server checks current bindings before approval and again before download. If a selected record or evidence changes, create and review a fresh report. Withdraw approval if the report should no longer be distributed.
An approved download is a ZIP containing a printable HTML report, structured JSON, CSV register, read-me and SHA-256 file checksums. HTML escapes source text and CSV protects against formula prefixes. This does not excuse review of free-text content for private or inappropriate material.
The audit report includes up to the latest 500 application events for the selected company. It does not include complete external execution logs, independently signed ledger checkpoints or provisioning receipts. Its explicit coverage statement must remain with the report.
The app no longer creates internal workspace snapshots; use Download your company on Reports or Download in the Company Repo for the whole company. Existing internal workspace snapshots include described tasks and their current states. Confirmed-work packets include only qualifying current confirmed tasks and explain exclusions. Agent packages include the selected proposal and its work bindings. These internal packets have different review and staleness behavior: they are historical frozen exports, not audience-approved client reports. Source retraction blocks their download; routine later task edits do not retroactively change their frozen contents. Generate a fresh packet when current work is needed.
No report action emails or publishes a packet. Download and use the approved delivery channel yourself. Log recipient, version, date, and distribution decision in the engagement’s agreed system. Downloaded files cannot be remotely revoked.
21. System status, retention and recovery
Settings › Connections reports the local database, derived graph, audio storage, and unconfigured integrations. The projection can be repaired from authoritative records. Rebuilding it does not replay business actions. The operator uses the migration and encrypted backup tools described in OPERATIONS.
Typed content, record history and audit metadata persist until an operator executes a separately designed retention/deletion process. Raw audio is access-expired and purged by the local worker. The pilot does not implement comprehensive deletion, legal hold, customer-managed keys, or production object storage. Do not assume the displayed engagement retention statement changes these mechanisms.
If the application is unavailable, preserve local unsent drafts and ask the operator to inspect the server/database. Do not reset Docker volumes or delete the environment file as a troubleshooting shortcut. Recovery uses an authenticated encrypted backup and a separately retained encryption key.
22. Common recovery paths
| Symptom | Likely cause | What to do |
|---|---|---|
| Save says version conflict | Someone changed the record or company revision | Refresh, compare, and save against the current version |
| Task cannot be reviewed | Missing owner, performer, accepted source, date or unresolved conflict | Open the task and resolve the named gap |
| Task stays awaiting confirmation | One required role, acceptance, version or hash does not match | Inspect requests and confirmation history; issue a current request |
| Invitation no longer works | Used, expired, rotated or withdrawn link | Ask the advisor for a replacement link |
| Request expired | Due date passed in UTC | Advisor creates a fresh bounded request |
| Recording cannot start | Permission/device/browser issue | Check microphone permission or use a typed response |
| Clip upload interrupted | Connection or server interruption | Keep the draft; use Upload / resume |
| Framework is blocked | Upstream analysis or accepted sources missing | Complete and review prerequisites |
| Report cannot download | Draft, withdrawn or stale bindings | Review the exact draft or generate a fresh packet |
| Case cannot advance | Wrong step, expired deadline, retry ceiling, or changed workflow | Inspect the reason; resolve the condition or close and restart |
| Reporting lines are empty | No manager relationships recorded | Use By stage on Work Map › People, or add verified roster relationships |
| Graph is partial | Bounded query or scan limit | Focus a smaller neighborhood and inspect the register |
| Runtime is blocked | No verified integrations | Continue work review; follow the separate integration plan |
When reporting a defect, include the page, record title and ID, expected result, actual result, timestamp, browser, and visible error code. Avoid attaching raw customer evidence, credentials, invitation URLs or backup keys to a public issue.
Advisor playbook: execute an engagement A to Z
This playbook is the working procedure for an advisor. Use it with the Full user manual for screen-level instructions. The sequence describes a typical bounded engagement; the timing is illustrative and should be agreed with the sponsor.
A. Qualify and prepare
Before the first session, write one sentence describing the result the client wants and one sentence describing the work in scope. “Understand standard order intake through release” is useful. “Transform the entire business with AI” is too broad to guide evidence collection.
Identify the executive sponsor, day-to-day work owner, data custodian, and people who perform the work. Ask where policy, actual system permissions, process documentation and execution records live. Distinguish access to a source from authorization to change a system.
For this local build, use synthetic or otherwise approved pilot information. The operator must complete the deployment, identity, source access and retention decisions before real client collection. Record unresolved setup dependencies in the engagement plan; do not assume a form setting has enforced them.
Prepare the engagement record and collection notice. Agree what the client will receive, who will see it, the intended review cadence, and the permitted delivery channel. Establish where the final package and distribution log will be stored.
Research public context before the meeting. Run Company Research from the Discovery Plan. Read the Company Snapshot and the Repo's company/ and market/ files. Each finding shows its state, its confidence and its sources. Keep source URLs and dates. Do not scrape private interviews into a public search query. Treat the brief as reported public context: public leadership listings do not establish internal accountability.
Bring that draft to kickoff. Ask the team to correct it explicitly: “Here is what we found publicly. What is wrong, outdated or missing?” Preserve both the original public claim and the team's correction with their own origins. Treat suspected bottlenecks and inferred process steps as questions until evidence supports them. Research findings stay Inferred until a person at the company confirms them. A fact that a person confirmed always wins over a later research run.
Exit evidence: reviewed scope; named sponsor and work owner; roster plan; source/visibility policy; exclusions; first review date; agreed deliverable audience.
B. Run a bounded kickoff
Use four or five kickoff questions. Ask for a recent example, not only a general process description. Listen for the completed output, the business value of that output, demand conditions, places work waits, and decisions that require escalation.
Suggested opening: “We will first document how this work happens, then ask the people involved to check the description. We will test an explanation for delay before recommending a change. This interview does not grant system access or authorize automation.”
Record the sponsor’s preferred explanation as a hypothesis. Ask what evidence would show that another explanation is stronger. Name the output unit—released orders, accepted jobs, fulfilled requests—so later analysis concerns system results.
Create follow-up requests only where information is missing. Avoid asking every person every possible question. Preserve the exact request and original response. Kickoff and work-response links open without accounts; select the intended recipients explicitly before sending. After acceptance, cite the source as an account from that participant, with an exact locator.
Exit evidence: a recorded kickoff account; explicit output measure or missing-baseline reason; initial flow boundary; competing explanation; prioritized evidence questions.
C. Collect and assess evidence
Collect at least one concrete work walkthrough from someone who performs the work. Ask them to trace a recent item from trigger to output, including waiting, returns, workarounds, and handoffs. Ask the owner separately about exceptions and acceptance criteria.
Inspect documentary and execution sources where permitted. A policy describes intended rules; an execution record shows an observation; an employee account explains experience. Keep these types separate. Record exact source locations and independent origins. Repeated copies of a single document do not strengthen source independence.
When accounts conflict, preserve the conflict and identify the discriminating evidence. Example: one team says “approved” when another means “verified.” Ask what decision was taken, by whom, under which source, and what the receiving team expects.
Accept reviewed sources; keep uncertainty in the interpretation. Retract unusable sources with reasons and inspect the dependent stale records. Use the source policy when deciding what text can be included in any client-facing summary.
Use the Company Repo to see what is still open. Select a layer (Company & market, Leadership, Departments, Team, Work) to see its files and how many are still to fill. Open To review for the answers, the proposed work and the research findings that need a decision. Each card says what to decide. Use Review in file → to get a focused Copilot review of one finding, then confirm it, correct it, or ask the person responsible.
Ask pointed questions. In the Copilot, Draft an ask writes one question for each missing, unconfirmed or disputed item, addressed to the person responsible. Read every question before you queue it. Add to Discovery queue saves unsent drafts. Review and send them from Discovery › Asks. See The Company Repo and the Copilot.
Exit evidence: a source register with origins and locators; named gaps and conflicts; sufficient information to draft concrete task cards. Unknown information stays unknown.
D. Build the work record
Write one task per bounded trigger-to-output unit. Use verbs and observable outputs. “Manage procurement” is a duty; “Check that the supplier packet contains a tax form and bank verification reference” is a task.
For each task, name one accountable owner and the performer, describe inputs/instructions/output, identify systems, state human checkpoints, and list denied actions and stop conditions. Select sources and a review date. Save incomplete proposals when necessary, then resolve the missing owner or evidence before review. A Copilot Edit on a Task Card file is a proposal. Accept writes a new version as an advisor entry. The Task Card stays Inferred until its people confirm it.
Group tasks with a duty label. Create an explicit duty record when responsibility for that continuing area needs review. Define each handoff’s receiving condition, input/output mapping, exception owner and failure handling. A receiving check is more useful than an unlabeled arrow.
Inspect the Work Map's tabs: Value chain for stages, recorded people and duties; Work flows for handoffs; Task Cards for detailed cards and evidence links; People for who holds the work and the reporting chart (Reporting lines); RACI for who is accountable. The reporting chart uses recorded managers. Do not infer a stage link, manager, owner or performer from seniority, job title or task ownership. Open Reports for the Client Brief to discuss coverage, priorities and the next review.
Exit evidence: reviewed task definitions; an explicit list of remaining conflicts; meaningful receiving checks; no unexplained orphan work.
E. Confirm with the people
Issue confirmation requests only after the task text is ready. Ask participants to review the exact current version and explain disagreements. Ensure that local account and invitation assurance match the training or pilot context; stronger real-client assurance is an operator dependency.
Review returned decisions. Correct responses count only after acceptance and only for the exact version/hash. Needs change, Not mine, and Unsure are valuable results. Resolve the issue, revise, and ask again. Do not change a participant’s response to improve the dashboard.
Explain to the client that “Human confirmed” means the relevant people accepted the described work. It does not mean a policy owner approved a permission grant, that a duty is fully confirmed, or that the task can run autonomously.
Exit evidence: current confirmation coverage; an exclusion list for unconfirmed/stale tasks; participant disagreement preserved in history.
F. Test what limits progress
Define the system output and a plausible limiting mechanism. Record a leading alternative. Build a discriminator capable of separating them. For example, compare how much time orders spend waiting for intake corrections with time waiting for credit review, in comparable cohorts.
Define metrics before interpreting results: formula, unit, cohort, source, owner, window, baseline, target, missing-data reason and guardrail. Use null for a missing baseline. Do not substitute an estimate into a measured-baseline field without explaining its source and limitations.
Use framework analyses where they clarify the question. Write evidence-bound analysis and review prerequisites. The current product supports human-authored work; it does not supply autonomous diagnosis. Structural readiness checks are a floor, not evidence that the test is well designed.
Exit evidence: a testable hypothesis, alternative, discriminator, defined metric, and sufficient independent sources—or an explicit collection plan for what is missing.
G. Plan a bounded intervention
Choose a small change that addresses the proposed mechanism. Name the accountable owner, prediction, measurement, stop conditions, and review date. Preserve the original prediction before collecting the result. Write what would lead you to stop, reverse or revise the intervention.
If assistance is being considered, create an agent proposal tied to exact work versions. Keep requested, approved, provisioned and observed scopes separate. Current export packages are drafts for review. Customer authority and live execution remain a separately configured and accepted integration.
Create a manual workflow only when task and handoff descriptions are current. Review its sequence and branch rules. A manual case can record what a human observed; it cannot verify an external action on its own.
Exit evidence: intervention record, preserved prediction, owner, observation plan, guardrails, reviewed workflow where useful, and explicit deployment boundaries.
H. Observe, review and learn
Record observations with time and locator. Track manual case progress, failures and bounded retries. Inspect expired deadlines and stale workflow bindings. The advisor must arrange follow-up outside the application because this version does not send reminders or escalations.
At the weekly review, begin with changed evidence and unfinished commitments. Compare the prediction with actual observations. Ask about population changes, staffing, product mix, seasonality, concurrent changes, and other confounders. Avoid declaring causation from a before/after difference alone.
Write an outcome review. Supported, Falsified and Inconclusive are distinct judgments. A missed target with poor measurement coverage may be inconclusive; a credible discriminating observation can falsify the proposed mechanism. Preserve the frozen prediction and measurement snapshot. Reviewing a falsified outcome returns the hypothesis to review.
Exit evidence: dated observations, outcome interpretation with limits, decision/owner/next action, and next review date.
I. Prepare and deliver the client record
Choose a report for its audience. An executive report emphasizes the decision and next action. A weekly report emphasizes changes, observations and commitments. An audit report identifies the application activity actually covered. Internal work and agent packets belong with implementation reviewers.
Select records deliberately. Write the summary in plain language: scope, what was learned, supporting observations, competing explanation, decision, next action, and limitations. Avoid unsupported claims of efficiency gains, complete coverage, verified authority, or successful deployment.
Preview the exact frozen report. Check names, dates, states, source locators, exclusions, audience, and unnecessary sensitive material. Record the review rationale. Download only when the current bindings pass. If evidence changes, regenerate and review a fresh report.
Deliver manually through the agreed channel. Record which version went to whom and when in your distribution log. Give the client a readable report and offer the structured register where it helps. Keep checksums with the original package.
Exit evidence: approved packet; delivery record; named owners and due dates; known limitations; agreed next engagement step.
J. Close or hand over
Review open commitments and sources due for refresh. Name the continuing record owner. Explain how later changes invalidate confirmations or reports. Provide the client-facing material and the appropriate operator or implementation handoff separately.
Have the operator verify backup and restoration for the installation. Follow the engagement’s approved retention and distribution policy; this pilot does not implement comprehensive client erasure or legal hold. Record unresolved infrastructure or integration decisions in the technical backlog.
An engagement is ready to close when its agreed questions are answered or explicitly bounded, its outputs are reviewed and delivered, and each remaining action has an owner. A visually complete graph is not a substitute for those conditions.
Suggested cadence
| Session | Main activity | Preparation | Output |
|---|---|---|---|
| Kickoff, 45 minutes | Bound outcome, flow and evidence questions | Initial scope and sponsor | Reviewed engagement and requests |
| Discovery, 2–4 focused interviews | Trace real work and exceptions | Roster and source policy | Accepted accounts and source register |
| Work review, 60 minutes | Resolve task and handoff descriptions | Draft work cards | Current reviewed work and confirmation requests |
| Diagnosis, 60 minutes | Compare mechanisms and measurement needs | Observations and alternatives | Testable hypothesis and bounded intervention |
| Weekly, 30 minutes | Check changes and commitments | Updated sources and cases | Outcome/decision and next action |
| Delivery, 45 minutes | Review findings and hand over | Approved report and exclusions | Client packet and continuing ownership |
These are facilitation suggestions, not service-level or delivery-time promises. Adjust the cadence to evidence availability and the agreed scope.
Training workbook
Use this workbook to demonstrate that you can operate the application and reason about its evidence correctly. Complete exercises in a separate practice company, or inspect the clearly labeled Cobalt guided example. The generated Northstar company is a reference answer, not a blank worksheet. All exercise data is fictional.
Workshop plan
| Module | Time | Practice |
|---|---|---|
| Orientation | 20 minutes | Explain the record types and four key distinctions |
| Scope and discovery | 40 minutes | Create engagement, roster and kickoff |
| Work and confirmation | 60 minutes | Write tasks, resolve disagreement, obtain current decisions |
| Work Map and cases | 35 minutes | Assign stages, inspect the org highlight, define handoffs, complete and fail cases |
| Measurement and outcomes | 35 minutes | Test the explanation and preserve uncertainty |
| Client delivery | 30 minutes | Draft, review and inspect a package |
| Repo, Copilot and asks | 30 minutes | Read file states, decide a To review item, queue an ask without sending it |
| Review and discussion | 20 minutes | Compare answers and identify improvement areas |
Allow breaks between modules. Pair participants so one plays advisor and the other plays a fictional participant in a separate browser profile. Rotate roles. A facilitator can shorten the workshop by inspecting the prebuilt example instead of recreating every record.
Exhibit A: fictional order procedure
Standard orders need an item, quantity and customer reference. Sam checks intake. Robin records the credit-check result. Jamie owns the completeness and exception process. Sam records a release only when the complete order packet and passing credit result are available. Jamie reviews exceptions. This exercise excludes payments, changing credit limits and automatic release.
Alex is the executive sponsor. Jamie and Robin report to Alex. Sam reports to Jamie. These relationships are supplied as training roster facts; do not infer additional reporting lines.
Exhibit B: invented practice observations
| Measure | Baseline cohort | Practice cohort |
|---|---|---|
| Standard orders observed | 20 | 20 |
| Median intake-to-release duration | 10 hours | 8 hours |
| Credit review duration | Under one hour | Under one hour |
| Product mix | Mostly established items | More small, simple orders |
| Staffing comparison | Not recorded | Not recorded |
| Intended target | At most 7 hours | At most 7 hours |
These are invented aggregate values, not an empirical dataset. They are sufficient to practice recording observations and limitations, but do not establish an effect or provide source-level statistical verification.
Exercise 1: bound the engagement
Create a company and engagement plan. Use the goal of understanding standard order delays without weakening credit controls. Record the exclusions in Exhibit A, four roster people, optional total headcount 24, source policy, audience and weekly cadence.
Write your answers before proceeding:
- What is the output unit?
- Who is accountable for the work and who sponsors the engagement?
- What belongs outside the scope?
- Does a roster of four establish coverage of all 24 employees?
- Which policy fields are descriptive in this version rather than technically enforced?
Submit: engagement record and screenshot or written summary of coverage.
Exercise 2: preserve an account
Create a kickoff request for Alex using five relevant questions. Preview the response form, issue the private link, and open it without creating a participant account. Submit the fictional account, inspect it as advisor, and accept it.
- What proves the source’s origin in the application?
- Does accepting the response confirm the tasks?
- Was an email sent by issuing the link?
- What must you do if the invitation is already used or expired?
Submit: request, response and resulting source IDs. Do not include the invitation URL or password.
Exercise 3: resolve disagreement
Draft the intake task with Jamie as owner and Sam as performer, but deliberately say that Sam can change customer credit limits. Review and request confirmation. Have Sam choose Needs change and explain the error. Accept that response as advisor.
Revise the denied actions and instructions. Review the new task and issue current confirmation requests to Jamie and Sam. Inspect the history after accepting their responses.
- Why must the first disagreement remain visible?
- Which version do the new responses apply to?
- Can the previous correct response from Jamie confirm the revised text?
- Does the final Human confirmed state authorize an agent to act?
Submit: task version history, final state, and a two-sentence explanation of the authorization limit.
Exercise 4: make the graph useful
Create the remaining two tasks and supplied manager relationships. Open Work Map › Value chain, select a stage and then Jamie. Follow the highlighted organization to Jamie’s duties and tasks. Compare Work flows for handoffs with Task Cards for detailed cards and evidence. Open Reports for the Client Brief to inspect the same work's coverage without treating a documented task count as a measured business result.
- Which recorded fields make Jamie an owner, and which make Sam a performer?
- Which view best answers “Who reports to Jamie?”
- What should appear when no stage, owner or manager is recorded?
- When does a task inherit a duty’s stage assignment, and when does its own assignment override it?
Submit: a written explanation of the stage → person → duty → task path and one reporting relationship. Use the record inspector to verify the relationship direction.
Exercise 5: observe a workflow
Create and review the duty, two handoffs and a workflow. Complete TRAIN-001 through all three steps. Create TRAIN-002 and record missing information at intake.
- Why must credit review remain blocked in TRAIN-002?
- Which route should be selected after a passing credit result?
- What happens when a ready step passes its deadline?
- Do the case controls call a real order system?
- What must you do if the pinned workflow is revised before the case continues?
Submit: one complete case and one case needing attention, each with useful observer notes.
Exercise 6: interpret an outcome
Create the hypothesis that incomplete intake causes waiting, with credit capacity as the alternative. Define the metric and intervention prediction before recording Exhibit B’s observation. Create an Inconclusive outcome review.
- What does the arithmetic difference between 10 and 8 show?
- Did the practice result meet the 7-hour target?
- What confounders prevent a strong causal conclusion?
- Which new observation would help separate the two mechanisms?
- Why should the original prediction remain unchanged?
Submit: hypothesis, metric, intervention and reviewed outcome, plus a proposed next test.
Exercise 7: deliver to the right audience
Create an executive report for Alex and Jamie. Select appropriate records and write a short summary, decision, next steps and limitations. Preview the draft and attempt to download before approval. Then review the exact audience and content and download it.
Inspect the ZIP. Locate the HTML report, JSON, CSV and checksums. Confirm that raw interview text and credentials are absent. In a separate practice report, change a selected record after drafting and observe the stale-binding rejection.
- Why does approval bind to exact content and audience?
- What needs to happen before a changed report can be delivered?
- Which package is appropriate for the sponsor, and which for an implementation reviewer?
- How will you record delivery when the application does not send it?
Submit: approved synthetic client packet and a manual delivery-log entry clearly labeled “training; not sent.”
Exercise 8: ask without assuming
Use the fictional sandbox for this exercise. On the Work Map, select a stage and open its info button. Identify whether the explanation is authored guidance or a sourced AI proposal. If company passages or peer examples are absent, record that limitation; do not invent them. For a sourced proposal, explain why a peer example is not a client fact or proof of success.
Open Ask about this work, select a relevant fictional person and preview the questions. Do not send real messages. Explain which saved work links support that choice, why an empty stage may not apply, and how a standalone task differs from an unrecorded sequence.
- Which exact stored email would be used in a real workspace?
- What continuing checks does the selected-recipient option authorize, and how would you pause it?
- Why can the weekly spacing, open-request rule or already-asked gap prevent another request?
- What remains saved when AI processing fails or encounters changed work?
- Why can a documented task flow remain unavailable for case execution?
Submit: the sandbox question preview and a brief explanation of the evidence, recipient and review boundaries. No email or provider execution is required for this exercise.
Exercise 9: read the Repo and ask the right person
Use the fictional Cobalt sample. Do not send real messages. The sample never uses AI connections, so the Copilot shows its no-AI path. That path is part of the exercise.
- Open Repo. Read the toolbar summary. Write down how many files are filled, to fill and disputed.
- Select each stop on the Layer row. Hover each stop first and read its tooltip. Write one sentence on what each layer selects.
- Open
company/profile.md. Open Details. Note the state, the sources and the known gaps. - Open To review. Choose one research finding. Read its decision sentence.
- Select Review in file →. Read what the Copilot panel shows without an AI connection: the decision, who can answer, and Ask the person responsible.
- Use Ask the person responsible. Check that no question asks about a confirmed value. Queue the ask.
- Open Discovery › Asks. Find the ask under Queued asks. Select Review and send → and read the real email in the preview. Do not send it. Select Remove to withdraw the draft.
- Which file states count as filled, and why does Inferred not count?
- Why must a confirmed value never appear in a question?
- Who did DutyGraph suggest as the person responsible, and why?
- What did queuing the ask send? What would send it?
- In a company with an approved AI connection, what would an Edit proposal write when you select Accept on
company/operating-rhythm.md?
Submit: the counts, the 5 layer sentences, the decision sentence, the queued ask's questions, and your answers. No email, link or provider call is required.
Final assessment
Explain the engagement to a fictional sponsor in five minutes. Show the work, the evidence, the strongest remaining uncertainty, and the next decision. Finish by opening a reviewed client report and identifying its audience and coverage limits.
An advisor is ready for supervised use when they can operate the flow, recover from disagreement and stale data, and explain the limits without prompting. The assessment is a training aid; it is not professional accreditation or production security acceptance.
Facilitator guide and answer key
Use this guide after learners attempt the workbook. Grade the quality of the reasoning as well as the state displayed in the application. A learner who obtains green badges by inventing agreement has not passed the exercise.
Preparation
Ask the operator to verify the app, database and current build. Run npm run training once if the reference Northstar company or example files are missing. Each run creates another clearly named synthetic company, so avoid repeated runs during the workshop. The Cobalt guided example is also synthetic and clearly labeled; it is safe for demonstration, not client evidence.
Prepare separate advisor and participant browser profiles. Use fictional addresses unique to each group. Do not give learners a shared real-client account. Provide Exhibit A and Exhibit B from the workbook and set the expectation that they must not infer permissions, causation or coverage beyond the evidence.
Exercise 1 answers
The output is a released standard order; the time metric is one measurement of the flow. Jamie is accountable for the work, while Alex sponsors the engagement. Payments, credit-limit changes, production credentials and automatic release are excluded. Four roster participants do not establish representation of all 24 fictional employees.
Visibility, engagement retention and timezone planning fields record intended policy. They do not implement fine-grained evidence ACLs, legal hold, a different server-audio retention period or automated scheduling. Learners should identify this distinction without assuming that a saved policy text enforces itself.
Exercise 2 answers
The response retains the request, person, original content and submission identity; acceptance creates a source linked to that original. Acceptance does not confirm task cards. Issuing a link does not send email. Current kickoff and work-response links open without an account or password. An expired, used or rotated link needs replacement by the advisor.
The bearer invitation provides possession assurance only. It does not verify corporate identity or provide enterprise MFA. A good learner includes the limitation without dismissing the value of preserving the exact response.
Exercise 3 answers
The original decision shows the real disagreement in the exercise and explains why the work changed. New confirmations apply to the revised version and hash. Jamie’s previous response does not automatically endorse new wording. Human confirmed establishes that the named people accepted the description; it does not grant permission to an agent or alter customer-system access.
Expected progression: proposed card, reviewed card, request returned, accepted objection creates conflict, revised card, review, current owner/performer requests, accepted correct responses, Human confirmed. The exact version count depends on how many edits the learner made; assess the linkage, not an arbitrary number.
Exercise 4 answers
Teach the Work Map's tabs together: Value chain for stage → recorded people → duties/tasks, Work flows for explicit handoffs, Task Cards for detailed cards and source records, People for who holds the work and the reporting chart (Reporting lines), and RACI for who is accountable. The reporting chart uses manager relationships. Missing stages, owners or managers remain gaps; team membership and senior titles do not justify invented links. Use the Client Brief on Reports to discuss coverage and next commitments. A bounded map or report must not be presented as the whole company.
Check the record fields with the inspector: an owner is accountable for the task; a performer does the work; a task is supported by evidence. A duty assignment can place its linked tasks in a stage, but an explicit task assignment overrides that inheritance. A selected card can have incoming and outgoing relationships. The text labels should make the direction understandable without guessing from layout.
Exercise 5 answers
TRAIN-002 has no completed intake and therefore lacks the receiving input for credit review. After a passing credit result, select the handoff to release only if the documented condition is met. An expired ready step needs attention and cannot be completed through the normal action until a permitted retry resets the deadline. Retry limits prevent endless repeated attempts.
Case controls record human observations; no external order is changed. A changed pinned definition blocks progress. Review the revised work and workflow, then close/restart the obsolete case when appropriate. Do not use retries to bypass a stale-definition error.
The handoff record’s timeout/retry fields describe the contract; case enforcement uses workflow step settings. Learners should set them coherently and understand that this version does not execute handoff-specific background timers.
Exercise 6 answers
The invented median is two hours lower, a 20% arithmetic reduction relative to ten. It misses the at-most-seven target. That arithmetic is not evidence of a real client improvement. Different product mix, missing staffing information, small cohorts, and no source-level matched dataset limit interpretation.
A useful next test measures intake correction waiting and credit-review waiting in comparable order groups while recording staffing and error rates. A capacity explanation needs observations that distinguish it from missing-input rework. The original prediction remains unchanged so later reviewers can evaluate the intervention honestly.
Inconclusive is an acceptable and expected outcome. Do not reward a confident “supported” result based only on the attractive before/after number.
Exercise 7 answers
Approval binds to the frozen report, exact version/hash, selected records and named audience. A changed source requires a fresh packet and review. An executive or weekly report is the usual sponsor-facing document; an internal confirmed-work or agent packet is for implementation/review audiences. Download alone is not a delivery record.
A training distribution log should say no message was sent. For an accepted engagement, the advisor records recipient, packet/version, date, approved channel and any acknowledgement in the agreed system. The application does not revoke copies that have already left the installation.
Exercise 9 answers
Filled means Observed or Confirmed. Inferred is research or an advisor entry that nobody at the company confirmed, so it is still to fill. A Disputed file has sources or people that disagree. Generated files never count.
The layers select by part of the company: Company & market (the outside-in picture), Leadership (leaders, strategy, operating rhythm, approval rules, department charters), Departments (one department's charter, people, duties and systems), Team (every person and role and the org chart) and Work (Task Cards, runbooks, workflows and agent drafts). A learner who says "Work shows the agents" has misread it: a mode on a Task Card is a proposed mode, and DutyGraph does not run agents.
A question about a confirmed value wastes the person's time and can reopen a settled fact. A fact a person confirmed always wins over research. DutyGraph suggests the person responsible from the records: the planner's person, the point of contact for company and market files, the owner, the approver, the role holder or the department head. The learner can name the reason the panel gives.
Queuing sent nothing. It saved an unsent draft. Only Send batch in the composer sends an email, and only Create a private link creates a link. Both wait behind the send gate.
On company/operating-rhythm.md there is no record behind the file, so Accept writes Notes. The file shows them as an advisor draft, labelled as not confirmed by the company, with state Inferred. A learner who says the file becomes Confirmed has missed the claim discipline.
Scoring rubric
| Competency | Points | Evidence of competence |
|---|---|---|
| Scope and data boundaries | 15 | Clear outcome, exclusions, roster denominator, policy limits |
| Evidence handling | 15 | Original preserved; locator/origin; uncertainty retained |
| Work and confirmation | 20 | Specific work, exact version decisions, disagreement resolved |
| Graph and workflow | 15 | Correct relationship meanings, receiving conditions, safe case progression |
| Measurement and reasoning | 20 | Alternative and discriminator, preserved prediction, justified outcome |
| Client delivery | 15 | Appropriate audience, clear report, current review, manual delivery record |
Suggested pass threshold is 80/100, with no critical reasoning error. Critical errors include inventing participant agreement, treating a title or task as a permission grant, claiming a real measured improvement from the synthetic data, concealing a material source conflict, or distributing unreviewed sensitive content. Revisit the relevant module before retesting.
Debrief prompts
- Which missing fact changed your next action most?
- Which apparent process disagreement was really a difference in vocabulary?
- What did the graph help you see that the register did not?
- Where was the register clearer than the graph?
- What would make the outcome supported or falsified rather than inconclusive?
- Which integration would need separate acceptance before this engagement used real customer systems?
Record product defects separately from learner mistakes. Include a minimal synthetic reproduction and visible error code. Never paste credentials, private invitations, or real source material into public issues.
Client deliverables and example outputs
The deliverable is a reviewed explanation of the business record and the next decision. A client should be able to understand it without learning the application’s database structure. Keep the structured files available for reviewers who need traceability.
Start with the living client brief
Open Reports in the company sidebar. It has 2 tabs:
- Prepare lists the reports by loop step (Discover, Map, Diagnose, Route, Measure). Each card names its audience and purpose and shows a readiness line in words, such as "Ready · 6 of 7 sections have data". Select Preview to open the report as the Repo is now. Choose a department or a workflow first for the Department pack and the Workflow build brief. Reports on the roadmap are in the Planned reports list. They have no action.
- Saved lists the saved snapshots with their type, date, company revision and state (Draft, Approved, Withdrawn or Out of date), who received each one and when they first opened it. Download your company is in this tab's header.
A report opens as a document: a cover, the executive summary, numbered sections, numbered exhibits with their sources, next steps, an appendix and notes that link to the Repo files. Use Save snapshot to freeze it as a Draft, Print / Save as PDF for a PDF (the cover is alone on page 1) and Download Markdown for a text copy. On a saved report, Approve, Deliver, Download zip and Withdraw use the same review and delivery steps as the Client Brief. If the server cannot build a report yet, the preview shows an example layout with fictional data and says so.
The Client Brief card opens its builder (#reports/client-brief). The Work Map also links to it, and old #deliverables links still open it with the internal exports. The Company Snapshot (Overview) is a separate front page that you can print or save as a PDF. The page assembles current scope, work coverage, documentation gaps, current advisor-reviewed findings selected for discussion, commitments and measures. It uses the saved company record; opening it does not call AI or send anything to a client. The displayed revision identifies the snapshot you are reading.
Use Prepare client report to carry that snapshot into a draft narrative and suggested record selection. Refine the summary, decisions, next steps and limitations, then name the audience. Save report draft creates a frozen report for preview and exact-content review. A source change can require a new draft or review. Write a custom report remains available for a different audience or purpose.
The living brief is an advisor workspace view, not a client portal. A saved report is a separate snapshot; it does not keep rewriting itself as the work changes. Download and share the approved packet through the channel agreed with the client, and record the recipient, version and delivery date. Preparing a report does not email it, schedule a meeting, activate billing or start a subscription.
Continue the engagement deliberately
Use the brief's Open weekly review action to revisit decisions, owners, dates, missing baselines and observations. Prepare participant updates, review returned accounts, and record the next intervention and how its result will be judged. Use Review strategy inputs to see what each framework needs before opening its existing canvas. Work records can inform strategy without supplying all financial, customer or market variables.
A recurring advisory engagement should have an agreed scope, participants, review cadence, responsibilities and deliverables. These are the advisor's working agreement with the client. The application supports that work record and manual sharing; it does not create a commercial retainer, client access or automatic charges. Measured benefit still needs actual observations and appropriate comparison.
Package choices
| Package | Intended audience | Typical contents | Review behavior |
|---|---|---|---|
| Executive client report | Sponsor and named decision owners | Scope, coverage, finding, decision, next action, limitations, selected work | Exact audience/content review before download |
| Weekly client report | Work owner and review participants | Changed observations, cases, commitments and next test | Exact audience/content review before download |
| Audit client report | Named governance/review audience | Selected records and latest 500 application event metadata | Exact audience/content review; explicit coverage limit |
| Internal workspace snapshot | Advisor and implementation reviewers | Described tasks, states, source metadata and exclusions | Frozen historical internal artifact. No longer created in the app; use Download your company in the Company Repo |
| Confirmed-work packet | Work and implementation reviewers | Current qualifying confirmed tasks and excluded-task reasons | Frozen subset; no business authority conferred |
| Agent proposal packet | Authorized design/review team | Version-bound work instructions, constraints and setup requirements | Non-operative proposal; no grants or runtime deployment |
What is in an approved client ZIP
client-report.html is the readable report. It uses a self-contained print layout and can be opened without the application. Use the browser’s Print / Save as PDF function for a paper copy.
report.json is the structured frozen packet. It contains the company scope, report audience and purpose, selected record fields, source revision, coverage and limitations.
record-register.csv is a concise index of type, title, version, state and record ID. READ-ME.md explains the audience and manual-delivery boundary. checksums.json lists SHA-256 hashes for the other UTF-8 files and the report record hash. A checksum detects changed bytes; it is not an independent approval signature or proof of who sent a file.
Raw source text, recordings, passwords, invitation tokens and person email fields are excluded by the client-report serializer. An advisor can still accidentally include sensitive details in a free-text summary or selected analysis. Inspect those fields before approving.
The supplied Northstar examples
The portable handbook’s example index contains three actual API-generated client ZIPs and their readable HTML reports: executive, weekly and audit. It also contains the confirmed-work internal package and an agent-proposal internal package. The training manifest identifies the fictional company and the record states used to produce them.
These files were generated by creating a separate sandbox company, enrolling fictional participants through the local API, submitting and accepting exact confirmation responses, reviewing work and handoffs, recording manual cases, and approving the report audience/content. They were not hand-drawn mockups. No real participant decision or customer result is asserted.
The example shows four roster people, three Human confirmed tasks, one complete manual case, one case needing attention, and an Inconclusive outcome. The fictional median changed from ten to eight hours but missed a seven-hour target, with unmatched cohorts and missing staffing information. This is the kind of limitation the client should see clearly.
Example executive message
“We have documented the standard-order flow and clarified the receiving checks between intake, credit review and release. The reviewed record identifies one incomplete case that needs Jamie’s attention. Incomplete intake remains a candidate explanation for delay; the current practice observations do not establish causation. We recommend collecting a matched cohort before expanding the change. All release decisions remain with people.”
For the supplied training packet, retain the explicit notice that all people and observations are fictional. In a real engagement, replace the language only with claims supported by that client’s reviewed sources and actual measurements.
A useful delivery checklist
- Confirm the named audience and purpose match the agreed engagement scope.
- Confirm the company, date, source revision and selected records are correct.
- Check that claimed confirmations and observations match their current states.
- Explain missing coverage, conflicting sources, confounders and open decisions.
- Remove unnecessary personal or sensitive details from authored narrative.
- Preview the exact packet and record the approval rationale.
- Download, open and inspect the readable report and register.
- Deliver through the approved channel and record recipient, version and date.
- Keep the original ZIP and checksums with the distribution record.
- Regenerate and review a fresh report after material source changes.
The application performs the binding and state checks. The advisor remains responsible for the business meaning of the narrative, appropriate audience, and actual delivery decision.
Suggested delivery meeting
Allow 30–45 minutes. Begin with the client’s desired outcome and the bounded scope. Show the work description and evidence only to the depth needed for the decision. Explain the strongest remaining uncertainty. Compare the prediction with observations, then agree the next action, owner and review date.
Use the graph to answer a relationship question, not as a decorative proof that the company is understood. Use the report’s selected records when the audience needs a stable reference. Finish with a written list of commitments and the limits of any proposed automation.
Handoff to an implementation team
Provide the relevant confirmed-work or agent proposal package along with the approved scope, source policy and unresolved authority questions. The implementation team needs a separate accepted identity/permission model, exact target resources/actions, approval chain, runtime adapter and operational controls before any live execution.
Do not distribute the complete development repository as the ordinary client report. Source code and technical runbooks are a developer/operator handoff. Do not include .env, database backups, encryption keys, raw recordings or commercial reference documents in a public repository or generic client packet.
Glossary and quick reference
The file states (Confirmed, Observed, Inferred, Disputed, Unknown, Proposed, Slot, Generated) describe Company Repo files. The classification labels (Known, Inferred, Assumed, Missing) describe the basis of a work record.
| Term | Meaning in this application |
|---|---|
| Accepted source | Source reviewed for use; acceptance does not prove every assertion |
| Accountable owner | Person named as accountable for the described task or claim |
| Advisor draft | Notes text the advisor accepted from a Copilot Edit. It shows in the file as "not confirmed by <Company>" and the file stays Inferred |
| Advisor review | Recorded human assessment of a record’s current completeness or meaning |
| Agent proposal | Draft assistance design bound to work versions, with no operative grant |
| Anchor | The person, file or department that the Copilot's chain starts from. The panel shows "Anchored on: <name>". Select × to clear it |
| Answer | What a person sends back for an ask |
| Ask | A question set that DutyGraph sends to a person. A queued ask is an unsent draft in Discovery › Asks |
| Authority | Legitimate permission to act in a business context; separate from work description |
| Automation candidate | A Task Card with a proposed AI mode. It is not an approved agent |
| Binding | Reference to an exact record version and hash used by another artifact |
| Case | One persisted instance of a reviewed manual workflow |
| Chain | The files above, below and across from the anchor: strategy, initiatives, mandate, role, duties, Task Cards, runbooks and handoffs. The Copilot reads it |
| Classification | Known, Inferred, Assumed or Missing label describing the stated basis |
| Company brief | The generated file company/brief.md: status, initiatives, work in motion, the last 14 days, key people and top gaps. Every Copilot request carries it |
| Company Repo | The company as a tree of Markdown files, compiled from the database, each with a state and sources. Not a second store |
| Company revision | Incrementing value identifying changes to the company’s record |
| Company Snapshot | The company's front page (Overview). It can be printed or saved as a PDF |
| Composer | The Discovery page that edits an ask's questions and email wording and shows the real email |
| Confirmation | A named participant’s decision about an exact task version/hash, later accepted by advisor |
| Confirmed (file state) | A person at the company confirmed it in DutyGraph. Recorded, not signed |
| Constraint hypothesis | Testable explanation of what may limit overall output |
| Copilot | The Repo Copilot: a panel that answers, reviews, proposes edits and drafts asks. It only proposes |
| Coverage | Explicit scope of roster, responses, tasks, observations or audit activity |
| Discriminator | Observation or test intended to distinguish competing explanations |
| Disputed | Sources or people disagree |
| Duty | Continuing responsibility that may contain several tasks |
| Evidence origin | Identity of the original source, used to avoid counting copies as independent |
| Execution mode | The mode of a workflow file: people only, people and agents, or agents only. It comes from the proposed modes of its Task Cards. It does not approve an agent |
| Export | Frozen internal record package; distinct from a reviewed client report |
| Focused review | A Copilot review of one To review finding that ends in a verdict: confirm, correct or ask a person |
| Framework | An evidence-bound analysis with defined upstream prerequisites |
| Generated (file state) | A file DutyGraph builds from other files, such as an index or the company brief |
| Guardrail | Condition that must remain acceptable while testing a change |
| Handoff | Contract describing what the receiving task requires and how exceptions are handled |
| Handoff file | A Repo file in flows/handoffs/ for one handoff: from and to task and department, what is handed over, the time limit and the failure action |
| Hash | Digest of canonical content or file bytes; not an approval signature |
| Human checkpoint | Described point where a person must review or decide |
| Human-verified fact | A fact a person at the company, or the advisor, confirmed or corrected. New research cannot outvote it |
| Idempotency | Retrying the same command key/content returns its prior result instead of repeating it |
| Inferred (file state) | Research or the advisor suggests it. Nobody at the company confirmed it |
| Initiative | A goal that leadership works toward. A Repo file in company/initiatives/, from an accepted priorities or goals answer, the engagement outcome or the company goal. It serves the strategy |
| Intervention | Proposed change with owner, prediction, measure, stop conditions and review date |
| Keep research current | The switch on the Company Research step page that refreshes due files on a schedule, within the monthly cap. Off by default |
| Layer | One level of the company's operating model on the Repo's Layer row: Company & market, Leadership, Departments, Team, Work. Each file states it in the layer key of its frontmatter |
| Link | A relation between 2 Repo files, up (serves, owned by), down (duties, Task Cards) or across (handoffs, workflows). DutyGraph computes it from records. Details lists it under LINKS |
| Locator | Reference precise enough to find the supporting passage or observation |
| Mandate | What leadership asks a department to deliver: the initiatives it serves. The Mandate section of the department charter |
| Manual case observation | Advisor’s record of human work, not independent evidence of external execution |
| Monthly cap | The most that scheduled refreshes can spend in one calendar month. At the cap, scheduled refreshes stop until the next month. Refresh now does not count |
| Notes | Versioned advisor content for a Repo file (migration 0043). Every version is kept |
| Observed | A client source supports the file |
| Outcome review | Interpretation against a preserved prediction and measurement snapshot |
| Performer | Person described as carrying out a task |
| Point of contact | The client person who receives the first touch |
| Private link | A bearer link to an answer page for one named person. It opens without an account |
| Projection | Rebuildable graph metadata derived from authoritative records |
| Proposed link | A link that a proposed record or an inference states. Nobody confirmed it. Details shows "Proposed", and the Copilot's path shows it dashed |
| Proposed mode | The AI mode written on a Task Card. A proposal, not a permission |
| Refresh plan | The research plan for a file that changes over time: what changes, how often, the fields and the sources. It is the refresh: block in the file's frontmatter |
| Report audience | Explicit intended recipients whose names are frozen into a client packet |
| Roster | People in the bounded engagement; not necessarily the entire company |
| Slot | A Repo file that nothing has filled yet |
| Source retraction | Removal of a source from current use while preserving history and marking dependencies stale |
| Stale | A record needs fresh review because its inputs, content or review period changed |
| Task | Bounded trigger-to-output work description |
| Task Card | One recorded task with its trigger, steps, inputs and outputs |
| Team list | The names and roles of the people who do the work |
| Tenant | Application isolation boundary for an account’s company data |
| Throughput | Completed system output per period, defined for the engagement |
| To review | The Repo tab with answers, proposed work and research findings that need a decision |
| Workflow | Reviewed sequence and branches of tasks and receiving handoffs |
Before clicking Review
Check the current version, required fields, evidence, accountable people, unresolved conflicts, and scope. State why the review is justified. If the source changed, refresh the derived record before reviewing it.
Before saying Confirmed
Check that both required roles have accepted correct decisions for the current version and hash. Check the review date. Do not transfer a past confirmation to a new description.
Before saying Improved
Check the formula, cohort, source, baseline, observation window, target and confounders. Distinguish arithmetic movement from causal attribution. If the source is synthetic, say so.
Before saying Authorized or Deployed
The current local build does not establish either state for external business systems. A draft task, reviewed diagnosis, report approval or exported agent package does not change that. Consult the separate integration and production acceptance plan.
Before sending a client packet
Check audience, exact content, current bindings, exclusions, and limitations. Download the reviewed packet, inspect it and use the agreed channel. Keep a distribution record; the application does not send messages or recall downloaded copies.
Before you queue an ask
Read every question. Each question asks about one missing, unconfirmed or disputed item. It names the person who can answer and quotes the current value. Do not ask about a confirmed value. Queuing does not send anything. Send from the composer after you read the real email.
Before you accept a Copilot proposal
Read the diff and the Notes preview. Check the label: a best guess from common practice is not a fact about the company. Accept writes an advisor entry. The file stays Inferred until a person at the company confirms it.
Explore the Cobalt guided example
Cobalt Industrial Supply is fictional. Its company snapshot, people, policies, stages and work descriptions are authored training examples. The example contains no live agents, sent emails or measured business results. Treat every finding as synthetic.
Open Settings › Workspace → Explore a fictional company → Open my sample company, then Work Map. The enriched sample includes a saved wholesale distribution stream and a small synthetic reporting chart. Select a stream and stage, choose a highlighted person, and follow their duties, tasks and flows. Reopening the sample adds the complete examples to an older Cobalt workspace. It enriches untouched original task descriptions, preserves revised or confirmed work, and does not reset your notes.
The saved sample’s stage links are authored synthetic fixture data. They are persisted with the Cobalt business profile and can be edited in Assign stages; they illustrate how duties and tasks appear in saved business stream columns. They are not inferred from titles or the order of stages. A task with its own stage links overrides its duty’s stage links.
If an older or incomplete Cobalt workspace cannot load the saved business profile, the guarded legacy fallback may show clearly labeled illustrative assignments. That fallback is read-only and does not change records. The normal saved sample profile and its stage assignments remain editable.
The Cobalt account and Company Snapshot
The sample is also a tracked account. Open Companies and click Cobalt Industrial Supply (badge Sample). Its fictional history runs from "advisor added the company" through preview research, a first note, the prospect's reply, Snapshot research, the company-picture review, an accepted offer, activation by a recorded signed SOW (reference SAMPLE-SOW-0001, no money moved), Deep research and a held executive kickoff, to team discovery. Every tab has content: Overview (contacts, private links, activity), Outreach (notes sent), Research, Activation (engagement summary) and Client.
- The contacts use
example.testaddresses. The two notes are recorded as sent by the advisor. DutyGraph did not send them, and no email job or notification exists for them. - Every sample link is expired and has no usable token.
- The research runs use the simulated provider. Every finding is labelled Simulated (not real data) and stays Inferred (for example Inferred · one source). No research provider was called. The company's Overview shows the Company Snapshot. The Repo shows each finding in its file, and To review lists the findings that need a decision. The sample never uses AI connections, so the Repo Copilot shows its no-AI path: the decision, who can answer, and Ask the person responsible.
- A research re-run on the sample uses the same fictional values, so it does not create conflicts.
- Reopening the sample adds the account once to an older Cobalt workspace. It never changes an account you created yourself for the sample.
Supplier onboarding
The intended outcome is a supplier ready for purchasing. Its eight task cards are part of the sample’s 18 guided business task cards; nine handoffs cover the usual path and two exceptions.
- Start with Check supplier packet, then Create draft supplier record.
- Click Standard terms to inspect the direct Finance route. Compare it with Nonstandard terms, which requires Legal review before Finance.
- At Verify bank details, compare Bank details match with Bank-name mismatch. A correction must include an independent Finance recheck before the verification result can be recorded.
- Inspect Approve the supplier. Its owner and performer are intentionally unresolved. Procurement describes verification as approval; Finance disagrees. This is a hypothesis about a source of delay, not a proven throughput constraint.
- Click Authorized approval. Read the output mapping, required input and acceptance check. A completed bank check does not authorize activation. Elena owns the escalation, not the unresolved approval decision.
- Select a person in Value chain to see their duties and tasks. Use Task Cards for detailed cards and responsibility records, and Work flows for handoffs. Open Reports for the Client Brief to inspect the fictional audit coverage.
Customer order fulfilment
Select Work flows → Customer order fulfilment. Its seven task cards and seven handoffs connect a customer's purchase order to a checked shipment and dispatch confirmation. The sample also includes three account-cycle task cards, for 18 guided business tasks in total. The separate access-review walkthrough has two access-controls task cards, both Unassigned, because it is a synthetic control walkthrough rather than part of the wholesale stages. Additional synthetic control scenarios remain in the saved records and in Agents › Business review, outside the wholesale stages.
- Follow Check customer purchase order → Check stock and delivery date.
- If stock is available, Stock reserved proceeds to pick release.
- If stock is short, Stock shortage goes to Procurement. Click Receipt + accepted date to see the three required items: a replenishment receipt, a stock reservation, and the customer's acceptance of a revised date. An estimated arrival date alone does not qualify.
- Both paths meet at Release the order for picking, followed by picking, dispatch and customer confirmation.
- The suspected issue is waiting for a coordinated shortage release. Inventory availability and carrier capacity are competing explanations. No timings or percentage improvements are invented.
What clicking means
- Click a stage, then a person, to narrow the map. Owns work comes from an owner field; Does the work comes from a performer field. Neither label is an approval.
- Click a task to inspect it; Open full record shows its input, output, performer, owner, duty, boundaries and sources.
- Click an arrow's label to open the actual handoff record, including acceptance criteria, timeout, retry limit and exception owner. Timeouts describe the proposed contract; they are not measured waiting time or an active agent timer.
- Unassigned, ownerless and removed-stage work stays visible for repair. The map does not create a relationship from a task title, duty name, department or reporting line.
- Dashed links are proposed handoffs that still need review. Fictional source acceptance does not imply participant confirmation, authority approval or deployment.
- Workflows & cases opens each workflow definition. A manual case requires reviewed current tasks, handoffs and workflow bindings. The supplier approval conflict deliberately prevents that readiness until it is resolved.
- Agents › Business review contains two proposals: Supplier Packet Assistant and Order Handoff Assistant. Opportunities › Proposed agents shows the agents that code proposes from the Task Cards, and Not proposed shows "Approve the supplier" (no accountable owner, C2). Both have named human owners and bounded drafting purposes. Neither runs tools, schedules jobs, releases business transactions or sends customer messages.
A useful screenshot
Use the dark theme, a named workflow and Expand → Fit. Keep the workflow name and synthetic-data context visible. Capture the clean flow first, then a second image with a handoff or task inspector open. Avoid showing personal account details, API settings or private invitations.
The landing page should feature this genuine application screen immediately below the hero. The final screenshot composition and landing-page copy remain subject to the owner's design feedback.
Read a task card in seconds
Open Work Map › Task Cards. The board uses saved business stream stages as columns, with an Unassigned column for work that has no explicit stage link. Choose a workflow, person or operating mode to filter the cards. A task can appear in more than one saved stage. An empty column means no records match; it does not prove that the company lacks that work.
The color and icon describe the recorded operating mode:
- Blue / Human: a person performs the work.
- Violet / AI: bounded AI execution is proposed.
- Amber / AI + human review: AI assistance, drafting, recommendations or execution with approval is proposed.
The review state appears separately. A proposed, reviewed or confirmed task does not establish that an agent is deployed. AI-generated descriptions start with human mode; the advisor deliberately chooses any proposed automation role.
Each card shows its duty, work product, accountable human, software, version and source count. Open it for the human instructions, proposed AI prompt, input/output contract, stop conditions, evidence, confirmations and version history. Use Assign stages on the Work Map to change business-stage membership. A task with explicit stage links overrides its duty’s inherited links; clear them to restore inheritance. Changing the record still creates a new version and invalidates dependent bindings.
Software chips describe systems used by the task. Cobalt's SAP, Google Drive, Google Sheets, Gmail and Notion choices are fictional. Their logos are bundled with the app; neither a logo nor a task record verifies a connection or grants access.
Cobalt includes one bounded AI proposal and three AI-plus-human proposals alongside human work. The prompts explain allowed inputs and outputs, uncertainty handling and human review. No agent is activated or email sent by loading the sample.
From evidence to a better result
Changed on October 8, 2026. Strategy is now in the main sidebar with the tabs Constraints, Frameworks and Measures. The Strategy assistant and the 16-framework library that this page describes are no longer on the Strategy page. See Strategy: possible constraints, frameworks and the Strategy Copilot. The weekly review steps below are unchanged.
The Strategy page connects five steps: collect evidence, record a possible constraint, define a test, try an intervention, and review the outcome. A framework helps ask a question. It does not prove the answer.
Start from the live work audit
The Strategy entry shows the current audit's evidence coverage, confirmed tasks, respondent coverage and unresolved work inputs. These counts describe the saved record, not business performance. A complete-looking work map does not establish costs, margins, customer demand, competitor results or a measured bottleneck.
Choose a Strategy question to see that framework's actual required inputs. Sources to assess means matching excerpts are available; read them to decide whether they answer the question. No matching source identifies a collection gap. Expand an input to see what it requires. The source inventory shows record versions, review states and excerpts; changed inputs can make a prior analysis out of date.
The suggested starting framework follows the server's dependency order and currentness checks. Missing or outdated upstream analyses appear by name. Review [framework] opens the existing canvas to inspect sources and decide whether to generate. Opening it does not call AI. Existing consent, provider charges, input limits and version checks apply when you start a run. A report remains a synthesis of its underlying evidence, not an independent source that proves its own conclusions.
Bring the next observation back shows saved measures, missing baselines, interventions, outcomes and returned weekly updates. Open Outcomes to prepare the next weekly review. New accepted observations can inform another strategy version, but the application does not run an unattended strategy cycle or treat every gap as resolved.
Use the constraint ledger
Each card states the suspected limit, why it is suspected, another explanation, what would change if it were removed, and how to test it. The Cobalt sample has two hypotheses. Neither is a proven constraint. Compare independent accounts and actual work records before selecting a diagnosis.
The Strategy assistant uses the existing OpenAI connection. Select up to eight sources, approve sending those excerpts, and request hypotheses. Review a result for the ledger. Complete the owner, output unit and missing fields before saving. The assistant does not review its own diagnosis. The separate framework library can run all sixteen analyses in dependency order when you select Run remaining sequence; it does not run unattended.
Define a KPI
A key performance indicator (KPI) is a measure used to judge progress. Record its question, formula, unit, population, period, source, owner, baseline, target and guardrail.
For supplier onboarding, separate approval waiting time from total onboarding time. For fulfilment, consider on-time complete orders, shortage waiting time and rework. Choose measures that test the suspected constraint and protect quality. Record whether elapsed time means calendar hours or business hours. A baseline is measured; a target is a choice with a stated basis. Missing is not zero.
Compare with competitors
No verified competitor benchmark dataset is loaded. Company research can establish a competitor list and its advertised offer. It rarely proves private operational cycle times, margins or staffing productivity.
Before comparing a measure, match the formula, units, segment, geography, period and population. Keep the source, publication date, collection method and comparability limits. Separate internal performance, competitor observations, industry references and management targets. Do not average incompatible measures or use AI estimates as measured facts.
The present metric form supports the internal measure. A dedicated, source-linked competitor benchmark register and automatic feeds remain to be built. Keep reviewed benchmark research in evidence and cite it in Industry Map and Balanced Scorecard / OKRs until then.
Set objectives and key results
An objective states the result the business wants. Key results state measurable changes and dates. Use Balanced Scorecard / OKRs to connect the objective to the KPI definitions in Measurements. Task counts are not usually business results.
Illustrative structure: objective — make supplier onboarding reliable. Key result — reduce the defined approval wait from a measured baseline to an agreed target by a named date, without increasing verification errors. Establish the baseline before choosing the numbers. Keep the actions needed to reach the result in duties and task cards.
Describe an intervention
An intervention is a specific change made to test an explanation. Record the suspected constraint, exact change, human owner, measure, prediction, review date and stop conditions.
Cobalt example: propose a named approval owner and one decision queue. Predict that waiting for approval will fall. Check whether total completed supplier onboarding rises, not just whether one queue gets shorter. Stop if authority remains disputed or control errors increase.
An outcome review compares the recorded prediction with observations. State the observation period, coverage and other changes that could explain the result. Choose supported, falsified or inconclusive. With no baseline or observations, use inconclusive.
Prepare a weekly standup
Weekly review now prepares four questions from the selected person’s current tasks and measures. The advisor can review them as a participant request. Saving does not send email. The existing invitation flow can send a reviewed request using Resend. Participants can type or record a response, create an editable OpenAI transcript, and check it before sending. Their advisor must have an OpenAI key configured for transcription. The four draft questions and response due date can be edited before preparing the request. Status counts show draft, sent and returned weekly requests.
The intended full cycle is:
- Before the meeting, draft questions from changes, unresolved decisions and missing measurements.
- The advisor reviews recipients and questions. An approved schedule sends one invitation per person and meeting.
- Participants send short updates. AI drafts an agenda with source links, decisions needed and a time limit per speaker.
- The team meets. Fireflies captures the meeting when the configured account and recording permissions allow it.
- A verified webhook identifies the completed transcript. Import it with meeting, speaker and time references, deduplicate it, and route it to Customer calls or People & work according to meeting type.
- A person checks the transcript and proposed decisions. Accepted evidence creates new analysis versions and proposed work. It does not silently change duties or authorize agents.
The rule-based request draft is implemented. The scheduled invitation cycle, Fireflies import, AI meeting agenda and continuous framework refresh remain integration work. Participant audio transcription is available on demand; it does not run unattended. Monday at 10 am was an example, not a configured schedule.
Review frameworks when needed
Each framework has a specific AI instruction set, named input requirements, a visual canvas, and a suggested review frequency. Open a card to read its canvas, inspect citations and confidence, or run a saved analysis with OpenAI. Relevant accepted evidence, company research and current upstream analyses are included automatically. You do not need to select source checkboxes. Manual advisor analyses remain available.
Customer frameworks respond to new interviews. Operational constraints and KPIs need weekly review. External-environment frameworks usually need less frequent review unless a material event occurs. These are suggested review times, not active schedules.
The app detects changed inputs and marks affected saved analyses out of date. A changed upstream analysis also makes its downstream analyses out of date, through the full dependency chain. Every required upstream analysis must be current before a dependent run starts. Run remaining sequence updates ready analyses in order, skips current ones, and stops if a run fails. It can make up to sixteen provider calls; charges apply. Each run saves its model, prompt version, exact inputs, citations, output, provider usage and outcome. A run does not confirm a constraint or change authoritative duties.
Scheduled refresh, automatic change summaries and notifications remain future work. See Live framework canvases for all sixteen layouts, input limits and version history.
Sources: ASD-STE100, Porter’s Five Forces, Fireflies signed webhooks.
Strategy: possible constraints, frameworks and the Strategy Copilot
Strategy is in the main sidebar, after Outcomes. It has 2 tabs: Summary (it opens first) and Frameworks. Since October 13, 2026 the possible constraints and Theory of Constraints are in Opportunities, RACI is a Work Map tab and Measures is an Outcomes tab; their old links open the new places. The Work Map shows how work moves. Strategy helps you test what may limit it. Every claim on a Strategy page cites Company Repo files. Select a number or a file chip to open the file in the Repo.
Status, October 8, 2026: Strategy is built. The pages and the server routes that find possible constraints and run the frameworks (packages S3 to S5 of the Strategy plan) use the company's approved AI connection: Claude first, else OpenAI. The sample company never calls an AI provider. Its pages say Sample output · no AI call. When a page cannot read its data, it shows the server's message. It never shows example data in place of your company.
Read the Summary
Strategy › Summary gives the answer first. Code builds every line from the Constraints and Frameworks pages. Nothing on it is typed by hand.
- The first line counts the possible constraints, for example "2 possible constraints may limit the work of Cobalt Industrial Supply. A test has not supported either one." Each flow then has 1 line.
- Each possible constraint has a key: K1, K2 and so on, 1 per flow. The same key shows on the Constraints page, on each exhibit and in Present mode. Its card shows the evidence word, whether it is ready to test and the first thing that is missing, the test, the rival explanation and the person to ask.
- See it in opens the Theory of Constraints, RACI or SWOT / TOWS exhibit with that key in focus. The evidence opens the flow on the Constraints page.
- What the frameworks say gives the title of each exhibit in 1 sentence. Select Open exhibit to open it.
- Decisions for the client lists at most 3 decisions, each with a person and a source file. They come from the Repo. Nobody decided them yet.
Focus a possible constraint
An exhibit address can end with ?focus=K1. The focus stays when you move between the exhibits.
- The Focus row above the diagram shows 1 chip for each key. Select a chip to put that key in focus. Select × to take the focus off.
- The boxes that cite the files of the key keep their full colour and get an outline. The other boxes fade. The row says how many boxes cite the files.
- Select a box. The inspector shows Used in: the other exhibits and the possible constraints that cite the same files.
- If your system asks for reduced motion, the change has no animation.
Present the exhibits
Select Present, or press P, on a computer screen (760 px wide or more). Present mode fills the screen with 7 slides in the light colours: the Summary, the leading possible constraint against its rival with the test, Theory of Constraints, RACI for the flow of a possible constraint, SWOT, TOWS and the decisions for the client. Each slide has its title, the exhibit and a source line: the Repo date, the number of files, the sample label and how many boxes have a review. The slides read the same data as the pages, so they change when the Repo changes.
| Key | What it does |
|---|---|
| → or Space | Next slide |
| ← | Previous slide |
| 1 to 7 | Go to that slide |
| F | Focus on or off |
| T | Light or dark colours |
| Esc | Close Present mode |
The evidence words
Code sets each word. The AI does not.
| Word | What it means | How it looks |
|---|---|---|
| Client confirmed | A person at the company confirmed the value in DutyGraph. | Thick solid border, filled dot |
| Reported | A source states the value. | Solid border, open dot |
| Inferred | Research suggests the value. Nobody confirmed it. | Dashed border |
| Assumption | Nothing in the Repo supports the point. | Dotted border, diamond |
| Disputed | Sources or people disagree. | Thick amber border |
| Not found | DutyGraph searched and has no usable value. The box names who to ask. | Empty box, dashed |
A box that ends with · research rests on web research only. Research alone is never above Medium.
Find possible constraints
- Open Strategy › Constraints.
- Select a flow in the list. Each flow shows how many signals it has and the key of its possible constraint (K1). The signals are about the flow, about evidence quality and about test readiness. A signal points to Repo files. It is not a finding. Rules in code find signals with no AI and no cost.
- Read the signals: the rule that fired (R1 to R11), the exact text it found and the files.
- Select Find possible constraints. Read the consent note. One click starts one AI call for this flow.
- Read each possible constraint. At most 3 show. At most 1 is marked Leading. Each one shows:
- why DutyGraph suggests it: the file, its evidence word, the exact quote and the rule that fired; - what points the other way; - other explanations; - what would show it is wrong; - the test: the measure, the baseline (or Not found) and the window; - questions to named people. Select Send as ask to make a draft ask for that person and open it in the Discovery composer. Nothing is sent until you send it there. For an open question, choose the person first. The sample company does not send asks.
- Select Accept… to save it as a possible constraint. Choose the accountable owner. You can edit the statement and the test measure. Or select Reject… and give the reason.
Each possible constraint names someone to ask: a person on the team list, or a role at the start of an open question ("Warehouse lead: …"). DutyGraph drops a possible constraint with no one to ask.
DutyGraph checks your edits as it checks the AI text. An edit with a word such as "bottleneck" or "root cause" is refused, and the message names the word. An edit with a number that no quote of the possible constraint states is refused too.
When a file that a search cites changes, the search is Out of date. You cannot accept from it: select Find again. You can still reject it. DutyGraph also hides each quote from a changed or removed file: the row says "The quote is hidden because the file changed."
A search does not read the file of an open possible constraint (findings, the strategy file), so the AI cannot copy it. The search says how many files it left out. In other files, DutyGraph removes only the lines that hold the title of an open possible constraint.
DutyGraph removes the quote from the saved search too, not only from the page. It also removes it when nobody opens the search again.
When you reject a possible constraint, DutyGraph remembers it for that flow. The next search gets its title and your reason. A new hypothesis that cites the same signals is left out, until the flow has a new signal. Do not use a banned word in a reason: DutyGraph does not send such a reason to the AI.
An accepted possible constraint stays a hypothesis until a test supports it. The list under the flows shows what each one needs before it can be tested. Constraints and gaps register opens the report for the client. The register lists each possible constraint you accepted from a search, with its flow, its evidence files, its open questions and "Reviewed by advisor · not tested". In Work Map › Value chain, the Possible constraints lens marks the Task Cards that an accepted possible constraint cites as evidence.
Run a framework
- Open Strategy › Frameworks. 3 frameworks run on the Repo: RACI, Theory of Constraints and SWOT / TOWS.
- Read the readiness: Ready, Runs with gaps or Not ready. The card says what is missing and who to ask.
- Select Run, read the consent note and confirm. One run is one AI call. A first run costs about $0.70 to $1 (an estimate).
- Select Open the exhibit to read the diagram:
- RACI: Task Cards are rows, people and roles are columns. A filled disc is Accountable, a ring is Responsible, a plain letter is Consulted, a light letter is Informed. R and A come from each Task Card. A dashed cell marked AI is a C or I that the AI added. The Check column says if a row has exactly 1 Accountable person. - Theory of Constraints: the flow from left to right. The step with the thick border is the step of the leading possible constraint. It is a hypothesis: it may set the pace of the flow. Below it are the 5 focusing steps with a prediction and a stop condition for each. Steps 2 to 5 are recommendations. - SWOT / TOWS: the 2×2 (internal and external, helpful and harmful) with ids such as S1 and O2. Below it, the TOWS matrix pairs them. Point at a pair chip such as S1×O2 to mark both items.
- Select a box to open it in the inspector: its evidence word, confidence, sources, quotes and who to ask. Select Accept, or Reject with a reason. An accepted box shows Reviewed by advisor. That is your review. It is not Client confirmed.
- Use Table for the text version, and Print for a PDF on white paper. The table view prints on its own page.
A run goes Out of date only when a file it cites changes. The changed boxes say so. You cannot accept a box whose file changed: run the framework again. Its quotes are hidden.
Limits
- AI runs: 30 per company in 24 hours, for constraint searches and framework runs together.
- Strategy Copilot: 60 questions per company in 24 hours, in addition to the Copilot's own limit.
- Sample company: 20 sample runs in 24 hours, and 1 at a time. A sample run makes no AI call.
- Cost: DutyGraph logs the tokens, the model and the estimated cost of each AI call, also of a call that fails. A model with no price in DutyGraph's table shows the cost as Not found.
Ask the Strategy Copilot
The Strategy Copilot is the Repo Copilot in Ask mode, on the right of each Strategy page (see The Company Repo and the Copilot). It is closed when the page opens: select the Copilot button to open it. It reads the Strategy part of the Repo: the company, initiatives, findings, flows, handoffs, measures, departments and Task Cards. Its answer names the files it uses. Its 2 buttons open Find possible constraints and Run a framework. On the sample company it shows 1 line and no message box, because the sample company does not use AI.
On the sample company, a run makes no AI call, so it starts with no consent step. Its button says Run (sample · no AI call). Output that code wrote says Proposed by code · sample, never "AI".
Measures
Strategy › Measures shows the measures, changes to test and outcome reviews. A missing value stays Not found. Zero means a measured zero.
What is not built
Business Model Canvas, McKinsey 7-S, Industry Map, Five Forces and PESTLE on the Repo are Planned. The earlier strategy brief and its OpenAI copilot, and the 16-framework library, are no longer on the Strategy page.
From Company Research to confirmed work
Discovery is where you ask people about their work. It has 3 tabs: Plan, Asks and Sessions. The Plan shows the 4 steps of discovery and the one step to do now. The Asks tab holds the asks you prepared and the asks you sent. The composer is where you edit an ask and see the real email.
Discovery opens when the engagement is active. For a prospect, the sidebar says "Discovery and Work Map open once the engagement is active." Record the commitment in Settings › Company account to open it.
The Plan: 4 steps
The Plan shows the 4 steps in order:
- Company Research. Research builds a first picture of the company. Then the first touch asks the point of contact to correct it and to send the team list.
- Executive Kickoff. Leadership confirms the strategy, the priorities, the owners and who decides.
- Team Discovery. The people who do the work describe their workflows, handoffs and systems.
- Solution Analysis. The advisor ranks the opportunities against the recorded evidence. The readout to the client is Planned.
Each step has one of 3 looks:
- The current step is a wide card with "Step N of 4", a short checklist such as "2 of 4 done", and one primary button for the next action.
- A done step is small. It shows "Done · <date>". The date comes from the records.
- A waiting step is quiet. It says what unlocks it, for example "Unlocks when the executive kickoff is held."
Select a card to open its step. Company Research opens its step page. Executive Kickoff and Team Discovery open their template in the composer. Solution Analysis opens the analysis, or the blockers that keep it closed. Opening a step never writes or sends anything.
The Company Research step
Select the Company Research card, or open #discovery/research. The page shows:
- the last run, its date and its result. A simulated run says "simulated data";
- Run research again: "Looks for new or missing facts. Facts a person confirmed are kept.";
- what research found, what it did not find, what is disputed and what a person confirmed;
- the sources that research used;
- Kept because a person confirmed it: each confirmed fact that newer research disagrees with, as "Confirmed: X · Research now says: Y";
- the company type and the file structure of the Repo, with the line "kept from <date>";
- the run history, with what each run changed;
- Refresh by file: the files that research keeps current, with Refresh now and Keep research current.
Facts a person verified always win
A fact that a person at the company confirmed always wins over research. The same applies when the advisor confirms or corrects a fact. New research cannot outvote it, relabel it or remove it. When newer research disagrees, DutyGraph keeps the confirmed value. It shows the difference in Repo › To review: "A person confirmed X. Newer research says Y. The confirmed value stays. Keep it, or ask the person again."
A new run keeps the file structure
Run research again does not rebuild the Repo's folders. An accepted company type and structure stay. A proposed structure stays as it is.
To start the structure again, select Rebuild the company structure and confirm. This starts a new run that proposes a new structure. Confirmed facts and answers stay. DutyGraph deletes nothing. Delete company is not built. Its design waits for a decision.
Refresh by file
Some research files change over time. The Refresh by file panel has one row for each refresh plan:
| Plan | File | What changes | How often |
|---|---|---|---|
| News and announcements | market/signals/ | New events | Weekly |
| Competitors | market/competitors.md | New or changed competitors and their moves | Monthly |
| Hiring | company/profile.md (hiring fields) | Open roles and the headcount trend | Every 2 weeks |
| Detected technologies | systems/ | Tools added or dropped | Monthly |
| Company profile | company/profile.md (other fields) | Identity, size and business model | Every 3 months |
Each row shows the last check, the next check ("due now" when it is due) and the result of the last refresh, for example "3 new findings · 1 flag · nothing changed". A row from a scheduled refresh adds "scheduled". People, roles, duties, Task Cards and workflows never refresh from the web.
Each of these files has a refresh: block in its frontmatter: the plan, the cadence, the fields, the sources, last_checked and next_check. See The Company Repo and the Copilot.
To refresh one plan now:
- Find the plan's row.
- Select Refresh now.
- Wait for the result line. The same plan cannot refresh again within 10 minutes.
Refresh now is also in Repo › Details on each file that refreshes. A refresh is a normal research run. It stays inside the budget of the account's research authorization. It runs at the authorized level, at most Snapshot. A row that needs a higher level says "This file needs Company research (Snapshot) authorization."
Confirmed facts never change
A refresh researches the plan's fields again, also the fields that a person confirmed. It does not write a value. New values arrive as research findings to review. When the new evidence disagrees with a confirmed value, DutyGraph keeps the confirmed value and adds a flag. The flag shows in Repo › To review and under Kept because a person confirmed it.
Keep research current
Keep research current refreshes each file when it is due, within a monthly cap. It is off by default. You need permission to run research.
- Turn on Keep research current.
- Enter the Monthly cap ($). The default is the cost of 4 refreshes at the lowest research level.
- Select Save cap.
When the schedule is on, DutyGraph checks it every 5 minutes. Each check starts at most 1 refresh for a company, on the most overdue file. It does not try the same file again within 24 hours. The line under the switch shows the spend, for example "On. Due files refresh by themselves. $3.00 of $12.00 spent this month · 1 scheduled run".
The scheduled refreshes stop when the spend reaches the cap. The page then says "The monthly cap is reached. Scheduled refreshes stopped. They start again next month, or when you raise the cap." Only scheduled refreshes count against the cap. A Refresh now does not.
The schedule skips these companies:
- the sample company and sandbox companies;
- a company with no account, or with a closed account;
- a company with no connected research source.
The schedule acts as the person who turned it on. When that person can no longer run research, it stops and says so. Turn it off and on again to continue. No email or notification tells you about a scheduled result now.
The composer
The composer opens as a full page (#discovery/compose/<draft>). It opens from a Plan card, from Review and send in Asks, or from the Repo.
The layout
The layout follows the width of the composer:
- From 1,500 px: 3 columns. The recipients, the editor and the live email preview.
- From 700 to 1,499 px (most laptops): 2 columns. The recipients and the editor. The email opens in a preview window.
- Below 700 px (phones): 1 column. The email opens in a preview window.
The editor shows the questions first. Then it shows the email wording (greeting, subject, note, answer-page title) as text. Select Edit wording to change it. Then come the answer-by date and the privacy notice.
Preview the real email
- Select Preview email or Answer page in the editor's action bar.
- Choose Desktop (660 px) or Mobile (375 px).
- When the ask has more than 1 person, choose the person.
- Press Escape, or select Close, to close the window.
The preview window opens by itself after Save draft or Save changes on 2-column and 1-column layouts. It shows the real email that the person receives.
Save and send
- Edit the questions (1 to 10, at most 200 characters each) and the wording.
- Set the answer-by date. DutyGraph refuses a date in the past.
- Select Save draft, or Save changes for an existing draft. Undo changes removes your edits.
- Read the real email in the preview.
- Select Send batch. The send area says "Blocked: …" and why, when the engagement or the email setup is not ready.
A sent ask cannot change. Save changes on a draft saves a new draft and withdraws the old one.
When email is not set up
When the workspace has no email provider, DutyGraph does not send the email. The send area says "Email is not set up, so DutyGraph will not send this."
- Select Create a private link for <name>.
- Select Copy and give the link to the person yourself.
- Select Next: <person> → for the next person in the batch.
A private link opens without an account or password. It is for the named person only. Do not forward it to someone else.
Asks
The Asks tab has 2 lists:
- Queued asks · N: unsent drafts. Each row shows the person, what is asked with the first question, where the ask came from (Repo Copilot, Repo file, Composer, Question plan, Team questions, First touch, Kickoff pre-work or Custom request) and the date.
- Sent asks · N: asks that left the queue.
For a queued ask:
- Select Review and send → to open it in the composer.
- Select Remove to withdraw the draft. Nobody was asked, so nobody is told.
The Asks tab and the Discovery item in the sidebar show the queued count.
Asks come into the queue from 3 places:
- The Repo Copilot: Add to Discovery queue, or Send to Discovery after a focused review. See The Company Repo and the Copilot.
- A Repo file: Ask the person responsible in Details.
- The composer's templates on the Plan.
Queuing never sends an email or creates a link.
The workbench
Below the Plan, Discovery › Plan keeps the workbench. The workbench holds the detailed forms of each step: the first touch, the kickoff, the team list, the team questions and the Task Cards. Its 5 working steps are Research & contact, Leadership meeting, Review the team, Team interviews and Review task cards. The sections below describe them. The Plan cards and the composer replace the old drawers.
Start from a website request
You can also choose Add a company. Enter its name and website, then select Continue to company research. Review the research options and start research. The review covers the whole business by default. For a large company, expand the department option and name the division to review first. Set improvement goals after research and leadership discussion.
The public form collects the company website, company name, team size, contact name, email and role. The goal is optional. Website requests arrive in the Inbox with the contact details. Open a request to review it and add the company. Opening a request does not send email.
1. Research & contact
Start Company Research from the Company Research step or from the company's account. One research run covers the company profile and the Deep lanes: competitors, customers, partners, regulation and go-to-market. Research writes sourced findings with a state and a confidence. Locally, RESEARCH_SIMULATION=true gives simulated findings that say "simulated". A hosted company needs a connected research source.
The Company Snapshot and the Repo's company/ and market/ files show the findings. Reported facts have not been independently confirmed. Company research does not establish internal duties or reporting lines.
Open a stage's info button for Why this stage? New AI stage proposals retain their company passages, documented peer examples, source links and dates, rationale and unknowns. The number of stages follows the proposed grouping; it is not fixed at six. Peer examples are comparisons to discuss, never client facts, employee assignments or evidence that a practice succeeds. Older saved template stages retain their authored guidance.
The first touch goes to your point of contact. Open it from the Company Research card: the composer shows the email, the recipient and the sponsor packet (what they are asked, what we know, what we still need). Save draft saves it. Preview the real email, then send it, or create a private link. Saving and sending are separate actions. The contact can speak or type answers on their private page. Their answers appear in the workbench's Leadership meeting step and in the Repo.
The contact's private page includes a team CSV template/upload, manual add/edit/remove controls, manager links, executive kickoff and pilot participant selections, and structured leadership inputs. Review the returned package, then choose Confirm roster & populate org chart. Invalid reporting lines or conflicting existing people block the import without partial changes. Selections do not send invitations. The uploaded organization is separate from the interview roster agreed after kickoff.
2. Leadership meeting
Choose Prepare meeting guide. The guide uses company research and the contact's actual reply, when available. It follows the selected business model and each stream of a hybrid company. Confirm or correct the proposed stages. The guide covers the offer and customer journey; goals with owners, measures and time horizons; departments and reporting; role duties; a concrete task example; dependencies and delays; software and decision boundaries; and follow-up. The advisor uses the guide during the meeting. The meeting agenda sections total 120 minutes. Without a returned preparation response, the guide is labeled provisional. For the order of the screens (agenda, approval, invitations), see Run a company through DutyGraph, step 4.
During or after the meeting, use Understand the business, together. Select one of eight topics, read the lead question, open follow-up prompts as needed, and record the answer. Agenda topics and preparation details are collapsible. You can also paste an authorized transcript. Unsaved notes survive switching Discovery steps, but leave Discovery only after saving. “Notes added” means text was entered, not verified coverage. Guided notes are optional; use them to close gaps rather than copy the whole conversation. Record who supplies each input, who produces the output, where it goes, and who handles exceptions. Leadership establishes context; each employee describes their detailed procedures later. The combined notes and transcript can contain up to 20,000 characters. Review the notes, then save them. These notes are accepted as the advisor's account of the meeting and become the source for team dossiers. They do not establish independent proof of every claim. Direct Fireflies import is not connected; paste an authorized transcript here.
3. Review the team
Save outcomes & review team saves the kickoff notes and opens step three. With AI configured, it also extracts the team and duties, infers their business-stage links, and saves the proposed map. Review the expanded people, roles and duties breakdown against the meeting notes before preparing individual interviews. Open company work map opens the Work Map. Company research cannot create the internal roster.
Open a person or duty to correct the saved result. Existing work remains available; a new roster does not erase it. Each saved person needs an email, role and department. If the AI output cannot be saved, an error explains the issue and the draft remains editable. Correct it and save, or prepare a new draft. The system does not invent email addresses to get past a missing field.
4. Team interviews
No AI is needed for this step. Under Write the question sets yourself, choose the people to invite. Pilot participants the sponsor chose in the kickoff preparation are preselected; people who share a name with someone else are flagged, and every picker shows role and email. Prepare questions starts each person from questions for their role, department and recorded duties. Edit them (up to ten, one per line), set the due date and choose Save. The saved requests appear under Send the team their questions.
When AI is connected, Create question sets can prepare the interviews instead. AI prepares one tailored interview for every person in the reviewed team. It uses their role, full reviewed duty descriptions, business model and leadership context. Up to eight focused prompts cover all of the person's stated duties, including recurring and exception work. Questions ask about a real example: what starts the work, what is needed, what they do, the tools they use, what they produce, who receives it, and where decisions or delays occur.
Question generation saves the personal requests automatically. Preview each form and email. Each row shows where that person is: emailed, link shared, connected the Companion app, answered, or expired. Remind sends a push to a connected phone, or a fresh emailed link (the earlier unused link stops working), at most once a day and three times per request. Select the people to contact and choose Review selected recipients. The final review lists the exact names and email addresses. Send questions to the selected people sends only those requests in sequence. A confirmed email-service receipt is skipped on later batch attempts. An uncertain result stops the batch for review. Open each request to inspect its email preview, delivery attempt and original questions.
The recipient opens the private link without an account or password. Voice is useful for a real example that captures steps, exceptions and frustrations; typing is always available. The recipient reviews the response before sending it. If transcription is enabled, a short recording can be transcribed into editable text.
After recording, they stop the clip and choose Transcribe into my response, then check the editable text. The advisor starts task extraction from returned responses. AI saves the proposed cards with inferred people, duty and stage links; the advisor can explore and correct the map afterward.
Their original answer arrives first. This is their understanding of the work, not company approval of ownership or agent permissions. If AI is unavailable, the typed or transcribed answer still gives the advisor useful evidence. In the Companion app, a participant can always choose Send my words for advisor review; the answer arrives marked as their own words, without cards. When exact task checks are needed later, the advisor prepares a separate confirmation request for the named owner and performer. See Answer a work request from your private link.
5. Review task cards
Start with Team answers. Every returned answer is listed, with the participant's open questions and the fields they edited. Accept answer makes it citable. Select a passage and choose Create task card from this answer: the card form opens with the participant as performer, their answer as evidence and the passage in the steps. Then assign an owner and Mark advisor-reviewed. Open the returned responses to see their original account, corrections and decisions. Retained cards are proposed tasks, with the participant as performer; accountable ownership still needs review. Removed cards remain in the response history.
Generated cards are saved as proposed work, without marking advisor review or participant confirmation. Inspect each card's input, action, output, tools and decisions. AI can reuse identified existing tasks on later runs, preserving corrections. Resolve missing owners, overlapping responsibilities and handoff differences with the relevant people. Use Review the work across the team for recorded gaps and optional AI hypotheses. Validate findings with the team before treating them as established facts.
A participant's initial check records their understanding. Once you accept their answer, that confirmation counts for the exact version they confirmed. Assigning an owner or marking the card reviewed does not undo it: the confirmation is carried to the new version with a note, because the described work did not change. The owner, if a different person, still gets one check. A changed description needs another check. Prepare personal task checks works for every reviewed card, drafted by AI or written by hand, and skips people whose confirmation already counts. Agent proposals come afterward; this process does not grant access or deploy an agent.
Changed duty descriptions are not silently merged by owner and title. Stage links can be inferred by AI or assigned manually; each is saved on the work record. For older unassigned work, use Connect existing work with AI on the Work Map. Open a duty or task to inspect the inference basis and confidence.
Continue with focused questions
On the Work Map, Ask about this work previews short questions about missing details in the selected stage. Choose relevant people from their stored email addresses. Continuing checks are on by default after this selection; the roster is not enrolled automatically. Pause or resume the saved selection from the map. A person receives at most one new gap request a week, cannot have another open work request (a request past its due date no longer counts), and is not automatically asked the same gap again. Questions send without AI; replies then wait for your review. The answer window starts when the email is sent, and one reminder goes two days before the due date. Sample workspaces preview questions without sending email.
The person answers by voice or text on the private page. Their reply is saved before AI processes it. Eligible updates remain proposed; changed or reviewed work and contradictions need advisor review. Reported task flows are documentation only until separately configured and reviewed for cases. Missing information does not prove a broken process, and this loop does not guarantee that every gap will be resolved. See Work Map.
Live framework canvases
Retired from the Strategy page on October 8, 2026. The 16-framework library on this page no longer shows in the app. Strategy now runs RACI, Theory of Constraints and SWOT / TOWS on the Company Repo as consulting diagrams. See Strategy: possible constraints, frameworks and the Strategy Copilot. This page stays as a record of the earlier library. Its server routes still exist.
Open Strategy → Frameworks to see the company through sixteen connected analyses. Each card opens the actual framework layout. You can inspect an empty canvas before supplying data, then run the analysis to fill it with the company's research and evidence.
Start with the business model
- Research the company in Discovery. Public search results are available to the framework automatically. They remain public claims, not confirmed internal facts.
- Accept useful leadership, customer and employee evidence as the engagement progresses. Frameworks use the relevant evidence buckets and work records automatically.
- Open Business Model Canvas. Read the nine sections and select Run this framework.
- Review the summary, populated sections, input assessments, citations and open questions. Save your own interpretation with Write advisor analysis if needed.
- Open the next available framework, or select Run remaining sequence to run ready analyses in dependency order. The sequence can make up to sixteen paid model calls. It skips current analyses and stops on a failed or uncertain result. Stop after this analysis allows the current call to finish and prevents another call.
The browser must remain open for the sequence to continue. An individual server request saves its result even if you leave the page. Reopen the framework to inspect its history before retrying an uncertain request. This is an on-demand action, not a daily or weekly automation.
Understand the canvas
Use the numbered section buttons to jump to a part of the framework. The opening summary counts findings to review, explicit gaps and unresolved questions. Open a confidence label to read its explanation. On a phone, table rows become vertical records with their field labels visible.
The opening summary explains the decision-relevant picture. Each finding names its basis:
| Basis | Meaning |
|---|---|
| Reported | A supplied source explicitly reports the point. This does not establish independent verification. |
| Inferred | The model draws a conclusion from the cited evidence. |
| Assumed | The model identifies a proposed assumption which needs a test. |
| Missing | The information is unavailable. It must not be filled with a plausible answer. |
Each finding also has Low, Medium or High confidence and a reason. Missing findings always have Low confidence. Confidence is an assessment, not a probability or a guarantee.
Select a Source link to see its title, version and location. Read used excerpt shows the exact text supplied to that saved analysis, even if the underlying record has since changed. You can also open the current internal record or original public page. A cited upstream framework opens its exact saved canvas version. Historical analyses retain their original citations, and strategy reports can reopen those versions too.
The input panel assesses each named variable as Found, Partial or Missing. Having a source available does not mean that it answers every input question. For example, a website may describe the offer without explaining margins or internal decision rights.
The sixteen outputs
| Framework | What you see | Key input requirement |
|---|---|---|
| Business Model Canvas | Nine connected business model blocks | Offer, customers, delivery and economics |
| Industry Map | Inputs → company → channels → buyers, with rivals and substitutes | A defined industry, region and value chain |
| Five Forces | Rivalry surrounded by entrants, suppliers, buyers and substitutes | Competitive structure within the chosen industry |
| PESTLE | Six external-change categories | Dated events, jurisdiction and company exposure |
| SWOT / TOWS | Four quadrants plus paired strategic options | Internal capability and external conditions |
| VRIO | Resource rows with four explicit tests | Capability proof and comparable competitive evidence |
| Ansoff | Existing/new product and market matrix | The company's current offer and served markets |
| Three Horizons | Core business, emerging growth and future options | Initiatives, capacity, learning goals and decision gates |
| Blue Ocean / ERRC | Eliminate, reduce, raise and create, plus a value-factor comparison | Customer decision factors and comparable offers |
| Jobs to Be Done | Situation, progress, workaround, forces and success | Specific buying or use episodes |
| Value Proposition Canvas | Customer profile and value map | Customer jobs, pains, gains and offer proof |
| Kano | Feature rows with category, sample, conflict and next question | Paired presence/absence research; otherwise features remain unclassified |
| McKinsey 7-S | Seven interrelated organizational elements | Leadership and employee accounts of how the business works |
| Balanced Scorecard | Financial, customer, process and capability perspectives | KPI formulas, sources, populations, windows, baselines and targets |
| Theory of Constraints | System output, suspected limit, alternatives and test | Demand, completed output, queues, waits and rework |
| RACI | Work rows with responsible, accountable, consulted and informed roles | Named people and supported responsibility or authority |
Five Forces addresses industry competition. PESTLE addresses broader external changes. The constraint analysis addresses the factor that may limit the company's total output. These should not be treated as interchangeable labels.
Dependencies and changes
The canonical registry defines the execution order. A framework waits until all of its direct upstream analyses are current. A completed, reviewed advisor analysis can also satisfy a prerequisite. An unfinished or stale manual analysis cannot.
Direct upstream artifacts are passed in full. Other current framework summaries provide orientation only; they are not independent evidence. The server binds each run to the exact source versions, hashes, prompt version and upstream run IDs. A source change, withdrawal or upstream rerun marks affected downstream analyses stale recursively. The old versions remain available for comparison; they do not silently become current again.
The Theory of Constraints analysis joins eight upstream frameworks. It is not run from a single isolated observation. Its result remains a hypothesis for human review and does not sign a diagnosis or change a task card.
Model and data limits
Each account can reserve 32 framework attempts in 24 hours. Retries with the same command key do not make another provider call. The application does not retry a failed provider call automatically.
Context includes up to sixteen accepted evidence excerpts, twelve structured work records and twelve company research excerpts, plus complete direct upstream analyses. The current research window is the fifty latest completed research runs. Evidence excerpts are limited to 5,000 characters and company research excerpts to 4,000. The page displays omitted-source and excerpt notices. Companies above 1,000 records need a narrower engagement before running this build's frameworks.
Prompts require source citations and visible uncertainty, reject missing or unexpected sections and columns, and prohibit invented measurements, benchmarks, quotations, owners or approvals. Schema and citation validation reduce invalid outputs; they cannot prove that every model conclusion is correct. Review the evidence before making a decision.
AI versions are separate from advisor-authored framework records. They do not edit the company roster, assign duties, send emails, activate an agent or apply an intervention.
Method references
The recognizable layouts and analytical distinctions follow the methods' published descriptions: Strategyzer's Business Model Canvas, Strategyzer's Value Proposition Canvas, Harvard Business School's Five Forces, McKinsey's 7-S framework, McKinsey's Three Horizons, the ERRC grid, Christensen Institute's Jobs to Be Done, Balanced Scorecard Institute's four perspectives, and Lean Enterprise Institute's Theory of Constraints.
Answer a work request from your private link
Your advisor wants your best understanding of the work. You do not need a polished explanation. A work response is your account of what you do; the advisor reviews it before turning it into task cards.
Try it without an account
Open the five-person walkthrough. Choose a teammate and follow the invitation, private page, answer, card review and advisor inbox. It uses fictional information. It sends no email and uses no microphone.
1. Open your invitation
Use the private link in your email. Check your name and company. No account or password is needed for this work response. Do not forward the link. Read the notice and questions before answering. If the link is expired, closed or already used, ask your advisor for help.
2. Describe a real example
Voice is preferred: a real example helps us capture the steps, exceptions and frustrations. You can type instead.
Start by listing your regular duties and the tasks within each one. A duty is an ongoing responsibility. A task produces a specific result; its actions explain how to produce that result. Describe each task using these five points:
- What starts the task, what data or documents you receive, and who supplies them.
- The ordered actions, checks, decisions and exceptions; say how often you do the task.
- What the finished result looks like.
- Which person, team or system receives the result.
- Which software you use.
Say when something is unclear or different in practice. Your account can differ from a colleague's account. The advisor can review those differences later.
3. Save and check your answer
Type your answer in the notes box, or choose Record a voice response. Recording stops automatically after three minutes. Listen to the clip, then choose Transcribe into my response when your advisor has enabled transcription. Check the editable text before sending. You can also use device dictation or type everything yourself. Audio stays in the page until it is transcribed or discarded; saving text progress does not save the recording.
Text drafts and card edits save on this device when browser storage is available. Use the same device and browser to return. Do not clear browser storage before submitting. A saved draft is not a submitted response.
4. Create and review your cards
The current passwordless work response does not ask you to create task cards. Your notes go to the advisor, who may draft cards for review. Keep separate duties and tasks clear in your answer so the advisor can preserve that structure. A task card describes a bounded unit of work; it does not prove company policy or give anyone permission to act.
The phone companion, when your advisor uses it, asks you to check a short proposed description before sending. That check means the description matches what you said. It does not approve company policy, and your advisor still reviews it. If the app cannot read your answer (no connection to the reading service, a daily limit, or no proposed steps), choose Send my words for advisor review: your words are saved as they are, and your advisor reviews them. The private browser link on this page works the same way until you send. On a phone, the questions come first; Open in DutyGraph Companion under the Send button is optional. After you send, reopening the link shows the date you sent your answer; there is nothing to sign in to. The link stays open until the end of the due day wherever you are.
5. Send everything together
Choose Send my response. Read the notice and confirm that you are the intended person before sending. Wait for the receipt message before closing the page.
If recording or transcription is unavailable, type your answer and send it. A typed response is complete; your advisor can help with the next step.
What the advisor does next
The advisor opens your returned response and preserves your original wording. They may draft task cards, assign the work to a business stream, and resolve missing owners or differences between teams. Your response records your understanding; it does not confirm company ownership, approval or permission for an agent. Any later company confirmation applies to the exact task version under review.
In the public walkthrough, Maya returns six fictional tasks. The advisor sees prepared assistance recommendations, human tasks and an unresolved approval-owner gap. These examples are synthetic; they are not live analysis, confirmed conflicts or deployed agents.
Review the team in the public walkthrough
The advisor inbox starts with people and compact task cards. Select a returned teammate, filter for AI candidates or gaps, and expand a card for its inputs, actions, handoffs and software. The original response and any transcript stay closed until you open them.
Choose Load remaining sample responses to complete the fictional five-person team without replacing responses you already reviewed. Then choose Review sample team findings. Prepared examples highlight an unresolved approval owner, a possible missing handoff account, and a shared-software process worth investigating. These are not results of a live AI analysis, confirmed conflicts, measured bottlenecks, or proof of duplicate software spending. Edited source cards are excluded from prepared findings until a fresh review.
The handoff view shows selected sample paths, not a complete company graph. Click a task to inspect its source card. Select the findings to discuss, choose Prepare all-hands readout, add notes, and download the meeting draft before leaving the screen. The readout includes an agenda, decision questions and proposed actions for the client meeting. Downloading does not send invitations or client messages.
Advisor starter program: practice, review, then lead
This is the initial DutyGraph training curriculum. It is available for self-study and supervised practice. It is not an accredited certification. A completed lesson does not establish that an advisor is ready to work independently with client data.
What a trained advisor should be able to do
Run a bounded discovery engagement from research through a client readout. Explain the difference between a participant's account, a reviewed company work record, and permission to delegate work to an agent. Preserve disagreements and missing evidence instead of filling them with plausible guesses.
Use the fictional participant walkthrough and participant guide before the exercises. The sample does not send invitations or issue live agents.
Module 1: qualify the engagement
Practice: an executive asks to automate the entire business. Write a one-sentence scope for one workflow, name the decision the work should support, and identify the sponsor and day-to-day work owner.
Required output: scope, exclusions, participant estimate, agreed data sources, success measures, and unresolved setup requirements. Before real collection, the operator and client must agree data handling, provider use, access, and retention.
Pass condition: another advisor can explain what is in scope and what would require a new agreement. Do not start with a promise of savings or a predetermined automation solution.
Module 2: prepare and lead the kickoff
Practice: separate company research into supported facts, inferences, and questions. Draft an invitation to the point of contact asking for executive participants, a roster, departmental responsibilities, goals, and concerns.
Run a 20-minute role-play with a sponsor. Ask for a recent example. Clarify the desired outcome, current measures, and constraints. Ask permission before recording a real meeting.
Required output: meeting guide, corrected business context, agreed roster, and open questions. Company research must not silently establish internal reporting lines or task ownership.
Module 3: prepare the team questions
Practice: review two people in the roster. Check department, role, and proposed duties against the kickoff account. Correct errors before generating individual questions.
A useful prompt asks: what arrives, what you do, what leaves, where it goes, which software you use, and what makes the work difficult. Ask for exceptions and an actual recent example. Prefer voice, while preserving a typed option.
Required output: reviewed questions and a private invitation draft. Demonstrate which action prepares a request and which action sends it. Do not use a real participant's email during practice.
Module 4: review returned task cards
Practice: a participant explains a task, edits the extracted cards, marks one uncertain, and submits. Find the original account and the reviewed card in the advisor view.
Explain that the participant has confirmed their understanding of the input, action, output, destination, and software. This does not assign company authority or resolve a conflict with another person.
Required output: two reviewed cards and an issue log with the source, disagreement, decision owner, and next question. Keep original accounts intact. Do not claim that automatic cross-team conflict detection has resolved the issue.
Module 5: diagnose and deliver
Practice: compare two accounts of the same handoff. One person thinks an order is ready when stock is reserved; the other expects a confirmed delivery date. State the mismatch and ask the work owner which condition is required.
Create a hypothesis about delay, identify the evidence needed to test it, and name a measure with a baseline period. Use a framework only when its inputs are available. Missing data should remain visible.
Required output: an evidence-linked work map, unresolved-issues log, and short readout with one recommended next step. Show what would change your conclusion. Obtain the required review before distributing a deliverable.
Module 6: hand off and maintain
Practice: teach an internal owner how to review a changed task and identify affected handoffs. Ask them to do it back without your help.
Required output: named internal owner, review cadence, open actions, change process, and support contacts. A 6–12 month support period is a possible commercial model, not a required or proven duration.
Practical review rubric
Score each item 0 (missing), 1 (needs help), or 2 (independent and evidenced).
| Skill | Evidence to inspect |
|---|---|
| Scope | One workflow and explicit exclusions |
| Kickoff | Questions address gaps rather than assume answers |
| Roster | People and duties trace to leadership input |
| Participant flow | Correctly demonstrates prepare, send, answer, review, submit |
| Evidence handling | Preserves original accounts and sources |
| Task review | Distinguishes personal understanding from company authority |
| Diagnosis | States uncertainty and a way to test the finding |
| Delivery | Readout has a decision, owner, and next step |
Suggested internal threshold: at least 13 of 16, with no zero in evidence handling or task review. This is a proposed quality threshold to calibrate during the first cohort. Two reviewers should compare scores on the first three exercises.
Critical failures require retraining regardless of the total: exposing another participant's private data, fabricating evidence, treating a demo issuance as live, or sending an invitation without the agreed recipient and scope.
Supervised pilot and release to independent work
The delivery lead observes one kickoff, samples returned cards, and reviews the final readout. Record advisor hours, correction rate, sponsor usefulness feedback, and issues requiring help. A reviewer records the decision and any limits; the app does not automatically certify advisors.
The first cohort should remain small enough for this review. Training more advisors than the delivery team can supervise would reduce quality before the method is proven.
Classify the business and shape its operating flows
Business stages are broader than duties: a stage groups work across roles; a duty is an ongoing responsibility; a task is a specific piece of work. There is no universal stage count. Templates are suggested starting points, and saved streams support 1-16 stages. Hover a stage or focus/tap its info button for an explanation and typical work. Company descriptions take precedence; renamed/custom stages ask for a description instead of inheriting unrelated examples. Edit descriptions in Discovery > Edit the profile and stages.
In Discovery, Research & contact and Leadership meeting both include What kind of business is this? The library contains 52 proposed operating models across services, technology, commerce, production, the built environment, transport, consumer services, care and education, financial services, and public/mission delivery.
An industry describes the market. An operating model describes how work delivers value. A company can therefore be an industrial supplier with distribution, manufacturing and service flows. Choose one or several templates, or create a custom flow. Eight flows per company and sixteen stages per flow are currently supported.
Every stage maps to a common function: Get work, Shape work, Commit work, Do work, Collect value, Keep/grow customer. Templates use appropriate names. Manufacturing's source, make and ship stages all support Do work; they do not silently become shape, commit and collect based on their position. Mission and public-service templates use outcome/funding language.
Search or filter the library, preview the stages and add a flow. Rename the flow or stages, reorder them, add/remove stages and adjust their common function. Save as proposed for kickoff discussion, or save as advisor reviewed after checking the fit. Editing a reviewed profile returns it to proposed. Advisor review is not an assertion of client approval or task confirmation.
Industry Map's Operating models & business flows section uses the same template identifiers, cites research, and can suggest several models. Current saved suggestions appear in the profile panel. Selecting a suggestion adds a proposed template; it never overwrites the company's profile automatically. Generate or refresh Industry Map explicitly using configured research and AI providers. No paid research or generation is triggered by browsing templates.
The saved profile is stored per company, version-checked and audited. Discovery uses it as context and asks leadership to validate the fit. Framework context includes the profile; profile changes make dependent analyses stale. Templates alone do not create duties, tasks, permissions or measured bottlenecks. Discovery AI uses internal accounts to propose work and saves stage links. Advisors can change those links afterward. The map does not infer operational chains from a template's layout.
Starter library
- General business (General): Attract → Qualify → Commit → Deliver → Collect → Retain
- Advisory & consulting (Services): Prospect → Diagnose → Propose & agree → Deliver advice → Invoice → Expand
- Professional services (Services): Develop demand → Scope work → Agree engagement → Deliver service → Bill → Maintain relationship
- Marketing & creative agency (Services): Attract clients → Develop brief → Agree campaign → Create & deliver → Invoice → Optimize & renew
- Legal practice (Services): Receive inquiry → Assess matter → Agree engagement → Perform legal work → Bill → Maintain relationship
- Accounting & bookkeeping (Services): Attract clients → Assess records → Agree engagement → Prepare & review → Bill → Renew engagement
- Engineering & design (Services): Identify project → Develop requirements → Agree scope → Design & validate → Invoice → Support next phase
- Managed IT & security services (Technology): Attract clients → Assess environment → Agree service → Operate & support → Bill → Review & renew
- Software as a service (Technology): Market → Qualify & sell → Subscribe → Onboard & serve → Bill → Renew & expand
- Licensed software (Technology): Generate demand → Evaluate fit → License → Deploy & support → Collect fees → Upgrade & renew
- Custom software development (Technology): Find projects → Discover requirements → Agree delivery → Build & release → Invoice → Maintain & extend
- Marketplace & brokerage platform (Commerce): Attract both sides → Match supply & demand → Confirm transaction → Facilitate fulfillment → Collect fees → Drive repeat use
- E-commerce (Commerce): Attract shoppers → Merchandise & select → Place order → Fulfill & deliver → Settle payment → Support & repurchase
- Physical retail (Commerce): Attract shoppers → Assist selection → Complete purchase → Provide goods → Settle receipts → Support & return visits
- Wholesale & distribution (Commerce): Develop accounts → Quote availability → Confirm order → Source & fulfill → Invoice & collect → Replenish accounts
- Discrete manufacturing (Production): Forecast demand → Plan production → Confirm orders → Source materials → Make → Ship → Bill → Support
- Process manufacturing (Production): Forecast demand → Plan batches → Commit supply → Source inputs → Process & test → Release & ship → Bill → Support
- Contract manufacturing (Production): Find programs → Engineer & quote → Agree production → Source & manufacture → Deliver → Invoice → Extend program
- Agriculture & food production (Production): Assess demand → Plan growing cycle → Commit supply → Grow & harvest → Grade & distribute → Collect → Plan next cycle
- Mining & resource extraction (Production): Identify demand → Assess resource & plan → Agree supply → Extract & process → Transport → Collect → Maintain supply
- Construction contractor (Built environment): Find projects → Estimate & plan → Contract → Build & inspect → Invoice & collect → Maintain relationship
- Property development (Built environment): Identify opportunity → Assess & design → Secure commitments → Develop & deliver → Sell or lease → Manage next phase
- Real estate brokerage (Built environment): Generate leads → Match property & need → Agree transaction → Coordinate closing → Collect commission → Maintain relationship
- Property management (Built environment): Attract owners & tenants → Assess property → Agree management or lease → Operate & maintain → Collect & account → Renew
- Field service & trades (Services): Receive inquiry → Diagnose & quote → Book work → Dispatch & perform → Invoice → Maintain & return
- Repair & maintenance (Services): Receive item or request → Diagnose → Approve estimate → Repair & test → Collect payment → Follow up
- Staffing & contingent labor (Services): Find employer demand → Source & qualify talent → Agree placement → Deploy & manage time → Bill & pay → Extend assignment
- Recruitment & executive search (Services): Find hiring needs → Define role & search → Agree engagement → Assess & place → Collect fee → Support retention
- Business process outsourcing (Services): Find accounts → Design service → Agree transition → Operate process → Bill → Improve & renew
- Freight brokerage & forwarding (Transport): Find shipping demand → Plan route & quote → Book shipment → Coordinate movement → Settle & invoice → Retain shipper
- Transport carrier (Transport): Find loads or passengers → Plan capacity → Book service → Move & deliver → Collect → Retain accounts
- Warehousing & fulfillment (Transport): Develop accounts → Design storage & service → Agree contract → Receive store pick & dispatch → Bill → Optimize & renew
- Hotels & lodging (Consumer services): Attract guests → Select stay → Book → Host & serve → Settle bill → Encourage return
- Restaurant & food service (Consumer services): Attract guests → Choose order → Confirm order → Prepare & serve → Collect payment → Encourage return
- Healthcare practice (Care & education): Receive referral or inquiry → Assess needs → Arrange care → Provide & document care → Bill & reconcile → Follow up
- Hospital & care network (Care & education): Receive referral or arrival → Triage & assess → Plan care → Treat & coordinate → Bill & reconcile → Follow up
- Education & training (Care & education): Attract learners → Assess fit → Enroll → Teach & assess → Collect fees or funding → Support progression
- Research organization (Care & education): Identify question & funding → Design study → Approve project → Research & validate → Report & account → Extend research
- Insurance agency & broker (Financial services): Find clients → Assess needs → Bind placement → Service policy → Collect fees → Renew & remarket
- Insurance carrier (Financial services): Attract risks → Assess & price → Bind coverage → Administer & handle claims → Collect & reconcile → Renew
- Lending (Financial services): Source applicants → Assess application → Agree financing → Fund & service → Collect repayments → Retain relationship
- Payments services (Financial services): Acquire merchants → Assess fit → Agree service → Process & reconcile → Collect fees → Retain & expand
- Investment management (Financial services): Develop relationships → Assess mandate → Agree mandate → Manage & report → Collect fees → Review & retain
- Nonprofit & mission delivery (Public & mission): Identify community need → Design program → Secure commitments → Deliver mission → Account for funding → Sustain relationships
- Public services (Public & mission): Identify public need → Assess eligibility & plan → Authorize service → Deliver service → Account for resources → Review outcomes
- Membership & associations (Consumer services): Attract members → Explain fit → Join → Deliver benefits → Collect dues → Renew membership
- Events & experiences (Consumer services): Attract audiences & sponsors → Design experience → Book or register → Produce event → Settle revenue → Build next event
- Media & publishing (Technology): Build audience → Plan content or campaign → Secure subscriptions or advertisers → Produce & distribute → Collect revenue → Retain audience
- Telecommunications (Technology): Generate demand → Qualify coverage → Contract → Provision & operate → Bill → Support & renew
- Utilities & infrastructure services (Production): Forecast need → Plan capacity → Authorize connection → Supply & maintain → Meter bill & collect → Support continuity
- Franchisor & network operator (Commerce): Attract operators → Assess fit → Agree franchise → Launch & support locations → Collect fees → Develop network
- Equipment rental & leasing (Commerce): Find demand → Match asset & term → Reserve or contract → Deliver maintain & return → Bill → Renew or re-rent
Get the first connected map
Discovery saves proposed stage links with AI-created duties and task cards. Open the Work Map to explore the result, then correct the work or its stage assignments. For older unassigned work, choose Connect existing work with AI. Open a duty or task to inspect the inference basis and confidence. These links do not grant authority or count as a person confirming the work.
Technology advisory and distribution
Search Tier4 Advisors for IT procurement advisory & technology brokerage, or Telarus for Technology services distributor (TSD). Review their proposed stages, independent-agent relationships and payment arrangements with leadership. See model details.
Work Map
The Work Map shows how work moves through the business. It does not show who reports to whom. Open Work Map in the company sidebar. The page has 4 tabs: Value chain, Work flows, Task Cards and People. All 4 tabs read the same work as the Company Repo, in the same state.
Business stages are broader than duties. A stage groups work across roles. A duty is an ongoing responsibility. A Task Card is one specific task. There is no fixed number of stages. Templates are starting points, and a saved stream has 1 to 16 stages. Edit the stages and their descriptions in Discovery > Edit the profile and stages.
Value chain
The Value chain is a grid. The columns are the stages of the stream, from left to right. The rows are departments: the team of the person who owns each Task Card. Each cell holds the Task Cards of one stage and one department. If the company has more than 1 stream, choose the stream in the toolbar.
- Each Task Card is a chip with one line of text. The border shows the state of its file in the Company Repo. A solid border means Confirmed or Observed. A dashed border means Inferred or Proposed. An amber border with the word Disputed means that sources disagree.
- A dashed chip can also mean that AI proposed the stage. The inspector says Proposed stage.
- Each stage header gives its basis: "11 Task Cards · 0 confirmed · 10 people".
- A cell with more than 4 Task Cards shows 3 and "+N". Select "+N" to see all of them.
- "Hands off to" under a cell names the departments that receive work from it. Point at or select a Task Card to draw its handoffs as arrows.
- The Unassigned column at the right holds the Task Cards with no stage. It is always visible.
- The legend is one line above the grid. Select it to read more.
Select a stage header to open the stage on the right. The address changes to #graph/stage/<stream>/<stage>, so you can share the link. The panel lists the workflows (each opens in Work flows), the duties and the people of the stage. Select a Task Card to see its state, department, owner, the person who does the work, its stages, its proposed mode and its handoffs. Open Task Card opens the record. View in Company Repo opens its file.
Use Lens to mark one kind of signal at a time: Wait points, Automation candidates, Single holder or Gaps. The lens is off by default. A lens mark is a pointer to recorded work. It is not a finding. When the Company Repo has no signals yet, each lens shows 0. Use Find a Task Card to dim the chips that do not match.
The grid scrolls inside its frame and does not shrink the text. On a phone, the Value chain is a list of stages. Open a stage to see its departments and Task Cards.
Assign stages
Select the Unassigned header, or Assign stages in a Task Card panel. Choose the stages of each duty or Task Card. A duty can be in more than 1 stream or stage. The Task Cards of a duty follow its stages. A Task Card with its own stages keeps them. Clear the Task Card's stages to follow its duty again. A title, a duty name or a stage position never creates an assignment.
The Unassigned panel also lists links to removed stages, so you can choose a current stage. Saving an assignment creates a new record version and follows the usual review rules.
For older unassigned work, choose Connect existing work with AI in the Unassigned panel. Open a duty or Task Card to see the basis of an AI stage link. These links stay dashed until a person accepts them. They do not count as a confirmation.
People
People shows who holds which work. It has 2 views:
- By stage (the default) is a matrix. The rows are people, grouped by department. The columns are the stages. A filled dot means that the person owns work in the stage. An open dot means that the person does the work of a Task Card there. On a phone, each department is a list.
- Reporting lines shows the reporting chart of the Company Repo (the same chart as the Repo's Team layer). It is the only reporting chart in DutyGraph.
Select a person to open their panel: "Reports to", the duties and Task Cards they own, the Task Cards they do, and their open asks. The address changes to #graph/people/<person>. Owners and performers describe accountability and work. Neither role is an approval.
Work flows and Task Cards
Work flows follows one workflow, its tasks and its handoffs. Only a recorded handoff shows that work passes between tasks. A work flow opens as a process with Open as a process: Scope and Map are built, and the 4 later stages show as Planned. Task Cards shows the cards with their filters. Open the Client Brief on Reports to discuss priorities and prepare a report.
PostgreSQL is authoritative. Neo4j is a derived projection. The Cobalt sample has a saved, fictional business profile and stage assignments. You can edit them. An older sample with no profile shows an illustration that is labelled as such and that changes no record.
Ask about missing details
The section Work details to fill under the Value chain can flag an unexplained stage, a duty without Task Cards, missing details or people, and work whose sequence is not recorded. These are gaps in what DutyGraph knows. They are not proof that people work badly. A stage may not apply, and a Task Card may stand alone.
Choose a stage, then Ask about this work. Preview up to three questions and select the relevant people using their displayed, stored email addresses. Selection is deliberate: the whole roster is not enrolled. An unlinked person is not assigned questions just because of their job title. With continuing checks left on, this selection also authorizes later gap questions to those people. Turn it off for a single round.
Use Pause to stop queued automatic follow-ups and future checks; use Resume to continue for the saved selection. A send already in progress may finish. Only one work request stays open per person, new gap requests are spaced at least a week apart, and the same gap is not asked again automatically. An unanswered or unclear gap can still need advisor attention.
The private link lets the person speak or type, review the text, and submit. The answer is saved first. AI then proposes new work or fills missing details in eligible proposed records. Original evidence remains available; reviewed work, changed sources and conflicting accounts are held for advisor review. Delivery and processing status appear in the request history. A saved reply does not mean its AI update succeeded.
Sample workspaces allow question previews and send no emails. Real follow-ups need email and AI configured in Settings. Replies may describe actual task flows, but automatically captured flows are documentation only. They cannot start cases until an advisor configures and reviews them through the normal workflow controls.
The Company Repo and the Copilot
The Company Repo is the advisor's workspace for one company. It shows everything DutyGraph knows about the company as a tree of Markdown files. Each file has a state and its sources. The Repo Copilot is a panel beside the files. It answers questions about the files, finds gaps, writes edit proposals and drafts asks. It only proposes. You accept or reject each proposal.
Open the Repo with Repo in the company sidebar. The badge on Repo counts the answers that wait for your review.
The layout
Above phone width, the Repo fills the screen like a code editor. The page does not scroll. Each pane scrolls on its own.
- The toolbar. Files and To review (N), a short summary such as "12 of 147 filled · 134 to fill · 1 disputed", Download and a ⋯ menu.
- The answers banner. It shows only while new answers wait. It has Who answered, Show, To review and Mark as seen.
- The Layer row. It highlights one layer of the company in the tree.
- The panes. The tree on the left, the open file in the centre, the Copilot on the right.
On a phone, the page scrolls and the Copilot opens as a sheet.
The Repo has no Next button in the page header. It is a workspace with its own toolbar.
The toolbar
- Select to fill or disputed in the summary to filter the tree to those files. Select Show all under the tree head to remove the filter.
- Download downloads every file as Markdown, with states and sources. Raw source text and recordings stay out.
- The ⋯ menu has Run research again, Copy MCP URL and Push to GitHub. Push to GitHub shows "Later". It is not built.
- Before Company Research has run, Run research is the main button.
The Layer row
A layer is one level of the company's operating model, from the market to the work. Select a layer to highlight its files in the tree. A highlighted file has a tinted row. A folder with highlighted files inside shows its name in green, so you can see where to open it. Each stop shows how many files are still to fill. A red dot shows that some files are disputed. Hover or focus a stop to read what it selects.
Each file states its own layer. DutyGraph writes the layer key in the file's frontmatter when it compiles the Repo. The values are company_market, leadership, department, team and work. The Layer row selects the files by this key. Nobody types it. Systems, metrics, findings, evidence, folder indexes and the root files have no layer.
| Layer | What it selects |
|---|---|
| Company & market | The company profile, market, customers, competitors, value spine and glossary. Research fills most of these files. A person at the company confirms them. |
| Leadership | The leaders and their roles, the strategy and its initiatives, the operating rhythm, the approval rules, and each department charter with its mandate. |
| Departments ▾ | Choose a department. The tree shows its charter, its people and roles, and the duties, Task Cards and systems they own or use. |
| Team | Every person and role, their duties, Task Cards and runbooks, and the org chart. |
| Work | Task Cards, runbooks, workflows, handoff files and agent drafts. The line counts them by proposed mode: people only, people and agents, or agents only. |
When you select a layer, one line under the row shows its description and its file count. The line can offer Add the first 20 to the Copilot. Select × to clear the layer.
A mode on a Task Card is a proposed mode. It is not an approved agent. DutyGraph does not run agents now. The news, competitor, hiring, technology and profile files can refresh from research (see "Research refresh" below). A live news or competitor feed is Planned.
When you select a stop, the Copilot also gets a summary of that layer (see "Chain context" below).
Org chart at the end of the row opens the org chart under the row. Select a person or a department to highlight their files.
The tree
- Select a folder to open it. Select it again to close it.
- Select Select in the tree head to show a tick box on each file. Tick files to add them to the Copilot's context. Select Select again to hide the tick boxes.
Asks
Each ask that you send to a person has its own file, under that person: people/<person>/asks/<ask>.md. The person's file lists their asks with the status of each one.
An ask file shows each question, the file that the question fills, and the status of the ask:
- Waiting. The person has not answered. The file is a Slot.
- Answered. The answer came back. Review it. The file is Proposed. The file does not show the answer.
- Accepted. You accepted the answer. The file is Observed. It shows the answer as understood: the person's answer in clear words, which they confirmed. A recommended improvement is a recommendation, not current practice.
- Closed. The request closed without an answer.
The person's own words stay as evidence in DutyGraph. The Repo does not copy them.
File states
| State | Meaning |
|---|---|
| Confirmed | A person at the company confirmed it in DutyGraph. The confirmation is recorded, not signed. |
| Observed | A client source supports it. |
| Inferred | Research or the advisor suggests it. Nobody at the company confirmed it. |
| Disputed | Sources or people disagree. |
| Unknown | DutyGraph searched and has no usable value. |
| Proposed | A draft that waits for review, for example a proposed Task Card. |
| Slot | A file that nothing has filled yet. |
| Generated | DutyGraph builds the file from other files, for example an index or the company brief. |
The legend under the tree shows each mark: Confirmed is a filled green dot, Observed a green ring, Inferred a dashed violet ring, Disputed a dashed red ring, Unknown an amber dot, Proposed a light ring, Generated a grey dot and Slot a short grey dash.
A percentage shows only for research-backed files, next to its state, for example "Inferred · 77%".
The open file
The bar above the file shows the path and the file's tools:
- History shows how the file stood at an earlier step. It shows only when an earlier state exists.
- Pin to context keeps the file in the Copilot's context after you open another file.
- Details opens the panel with STATE, FILE, REFRESH (only on a file that refreshes), LINKS, SOURCES, KNOWN GAPS and NEXT.
The strip under the bar shows the state, the owner and approver where they apply, the sources and the next step. An empty field says "Not captured".
Ask the person responsible is in the NEXT section of Details. It builds up to 10 questions from the file's open fields without AI. It suggests the person who can answer. You can change the person and untick questions. The ask goes to the Discovery queue. Nothing is sent.
Below the ask, Or record what a person told you has Confirm, Correct and Rule out. Use them only for what a person at the company told you.
Links between files
The files link to each other. The links follow the chain of custody from the strategy to the work:
- The strategy and its initiatives (
company/strategy.md,company/initiatives/). - The department mandate, in the department charter (
departments/<department>/charter.md). - The duties of the department (
duties/). - The roles that hold the duties, and the people in the roles.
- The Task Cards that do the work, with their runbooks and agent drafts.
- The workflows and handoffs that carry work from one department to the next.
DutyGraph computes each link from the records and the accepted answers when it compiles the Repo. Nobody types a link. The links are in the file's frontmatter, for example serves, owned_by, tasks and handoffs.
LINKS in Details
Open Details on a file. The LINKS section has 3 groups:
| Group | What it shows | Examples |
|---|---|---|
| Up | What this file serves and who owns it. | Serves, Owned by, Reports to, Charter, Department |
| Down | What this file holds. | Initiative, Mandate, Duty, Task Card, Performs, Runbook, Agent draft |
| Across | Handoffs and other departments or workflows along the value chain. | Receives from, Delivers to, Handoff in, Handoff out, Workflow, Department |
Each row shows the relation and the title of the linked file. Select a row to open that file. A file from an older compile shows no LINKS section.
Proposed links
A link is confirmed only when accepted records state it. A link is proposed when one of its records is still a proposal, or when DutyGraph inferred it. For example, DutyGraph proposes a link when an initiative names a department in its own words. The row then shows Proposed. Do not treat a proposed link as a fact. Ask the person responsible to confirm it.
The frontmatter key links_state gives the state of all the file's links: confirmed, proposed or mixed. The key links_proposed lists the proposed links.
Initiatives
An initiative is a goal that leadership works toward. DutyGraph writes one file for each initiative in company/initiatives/. The text comes from these sources only:
- the accepted answer about the leadership team's priorities for the next 6 months;
- the accepted answer about the company's goals;
- the engagement's outcome;
- the company goal from the setup. It stays Inferred until an executive confirms it in the kickoff.
DutyGraph never prints a proposed answer as an initiative. Each initiative serves the strategy. An initiative file shows the priority, the horizon, the success measure and the owner. A value that nobody gave says "Not captured yet".
"Departments that deliver it" lists a department only when the initiative's words name it. That link is proposed. Otherwise the file says "Not captured yet. Ask an executive in the kickoff which departments deliver it." You cannot create or edit an initiative as a record now.
Mandates
A mandate is what leadership asks a department to deliver. Each department charter has 2 sections from its links:
- Mandate: the initiatives that the department serves, and the strategy.
- Works with other departments: the departments it receives work from and delivers work to, and the handoffs that carry the work.
The charter's Purpose section keeps the department's own answer. When nobody gave a mandate, the fields card says "Not captured" and offers the ask.
Handoff files
A handoff file shows one handoff between 2 Task Cards. The files are in flows/handoffs/. Each file shows the task that hands over and the task that receives, their departments, what is handed over, the time limit, the retries, the acceptance check and the failure action. A value that nobody reported says "Not captured".
Execution modes
Each workflow file has an execution_mode: people_only, people_and_agents or agents_only. DutyGraph takes it from the proposed modes of the workflow's Task Cards. The mode is confirmed only when the workflow and each of its Task Cards are accepted. Otherwise it is proposed. An execution mode does not approve an agent. DutyGraph does not run agents now.
Research refresh
Some facts about a company change over time. DutyGraph keeps a refresh plan for the files that research fills. A refresh researches the file's fields again. It never writes a value directly.
The files that refresh
| Plan | File | What changes | How often |
|---|---|---|---|
| News and announcements | market/signals/ | New events | Weekly |
| Competitors | market/competitors.md | New or changed competitors and their moves | Monthly |
| Hiring | company/profile.md, hiring fields only | Open roles and the headcount trend | Every 2 weeks |
| Detected technologies | systems/ | Tools added or dropped | Monthly |
| Company profile | company/profile.md, all other fields | Identity, size and business model | Every 3 months |
Files that people fill never refresh from the web. These are people, roles, duties, Task Cards and workflows.
The refresh: block
Each file that refreshes has a refresh: block in its frontmatter. The block shows:
planandcadence: the plan and how often it refreshes;fields: the fields that the refresh researches;sources: the sites and searches for the plan, at most 8. A site shows as its main address only;last_checked: the day of the last run that researched these fields. It isnullwhen no run did;next_check:last_checkedplus the cadence.
company/profile.md has 2 plans: the profile plan in the block, and the hiring plan under refresh.hiring.
You cannot change the sources or the cadence in the app now. An editor for them is Planned.
Refresh now
- Open a file that refreshes, for example
market/competitors.md. - Select Details.
- In the REFRESH section, read the plan, the cadence and the last and next check.
- Select Refresh now.
The row says "Refreshing…" while the run is active. When the run is complete, the Repo reloads and the row shows the result, for example "3 new findings · 1 flag · nothing changed". You need permission to run research. The same plan cannot refresh again within 10 minutes.
The Company Research step page has the same rows for all 5 plans under Refresh by file. It also has Keep research current, which refreshes due files on a schedule within a monthly cap. See From Company Research to confirmed work.
Confirmed facts do not change
A refresh also researches the fields that a person confirmed. It never changes a confirmed value. When the new evidence disagrees, DutyGraph keeps the confirmed value and adds a flag. The flag shows in To review: "A person confirmed X. Newer research says Y. The confirmed value stays. Keep it, or ask the person again." New values arrive as research findings to review, with their sources.
To review
Select To review in the toolbar. Each card has a title, the value, and one sentence that says what to decide. For example: "Sources disagree: 120 vs 85. Pick the right one or ask the client."
- Answers to review. Readings from people's answers. Accept records the reading in its file. Reject removes it.
- Proposed duties, Task Cards, handoffs and workflows. Accept reviews the record. A duty, handoff or workflow asks for a reason. Reject needs a reason and withdraws the draft.
- AI modes, owners and hours for Task Cards (since October 14, 2026). What the AI-fit pass proposed for each Task Card, by code from the card and the roster, with no AI call: an AI mode with its reason, an owner (the performer's manager), the person who does the work, or which Task Card an hours answer is for. Select Accept the mode, Accept the owner, Accept or the Task Card, or Not now. Open the Task Card opens the card. Nothing changes until you accept, and accepting needs the Review records permission. See Opportunities.
- Research findings. Select Review in file →. DutyGraph opens the file at the finding, opens the Copilot and asks for a focused review of that one finding.
A focused review ends with 1 verdict:
- Looks right. Confirm it in Details.
- Needs a correction. Correct it in Details.
- Ask a person. Select Send to Discovery. The Copilot drafts the ask for that person and adds it to the Discovery queue. Nothing is sent.
When the company has no approved AI connection, the card still shows the decision sentence, who can answer, and Ask the person responsible.
The Copilot
What the Copilot reads
- The open file. It is the Copilot's context by itself, as "Current file". Select × on the chip to leave it out of the next ask.
- The whole company by default. With no file open and none added, the context row shows "CONTEXT · Whole company" and the Copilot reads every file of the company (the selected layer first). The files are about 150,000 tokens at most; when a company is larger, the least related files are left out and the Copilot is told how many.
- Or narrow it: up to 100 files. Add files with Pin to context, the tree tick boxes, a layer, or an org chart node. The context row shows "CONTEXT · n files", then the chips that fit, then +N for the rest. Edit always needs the 1 file to change: open it first.
- The company brief. The line "● <Company> · company brief on" shows that the Copilot reads
company/brief.md. The brief holds the status, the current initiatives, the work in motion, the last 14 days of activity, the key people and the top gaps. It is a generated file, at most 4,000 characters. It holds no email address, quote text or proposed value. - The chain. The files above, below and across from the anchor. See "Chain context" below.
- The conversation. The Copilot reads the last 6 turns. Select Clear to start again.
The Copilot reads accepted values only. Proposed readings, quote text and email addresses do not go to the AI provider.
Chain context
The Copilot reads the chain of the person, file or department that you work on. The chain is the vertical slice of the company through that anchor:
- Up: the strategy, the initiatives, the department mandate, the role and the duty that the work serves.
- Down: the duties, Task Cards, runbooks and agent drafts below the anchor.
- Across: the handoffs in and out, the workflows, and the departments that the work comes from or goes to.
The Copilot uses the chain to explain why the work exists. It keeps an Edit proposal in line with the mandate. A drafted ask names the mandate or the initiative. The Copilot treats a proposed link as unconfirmed and does not state it as a fact.
The anchor
The anchor is the item that the chain starts from. The Copilot uses the last item that you selected:
- A person in the org chart. Select Org chart on the Layer row, then select a person. You can ask about that person with no file in the context.
- A department. Select Departments ▾ on the Layer row and choose a department.
- The open file. Open a person, role, duty, Task Card or department file.
The line under the company brief line shows "Anchored on: <name>".
The path line
The next line shows one path from the strategy down to the anchor, for example "Strategy → Finance → AP manager (Dana Brooks) → Dana Brooks". Select a step on the path to open its file. A dashed step is a proposed link. The line then shows "Dashed: proposed link".
Layer summaries
When you select a stop on the Layer row, the Copilot gets a summary of that layer, not many files. The line shows "Layer summary: <layer>". The summary has the number of files in each state and the files with the most gaps. It also has the initiatives, the departments and their mandates, the roles, or the workflows by execution mode, as the layer needs.
Clear the anchor
Select × next to the anchor name. The Copilot then reads no chain. The anchor comes back when you select another person, department or file.
The chain holds accepted text only. It holds no email address, quote text or proposed value. A file that waits for review shows its title only. The chain does not use one of the 20 context places.
The 4 modes
| Mode | Use it to |
|---|---|
| Ask | Ask a question about the context files. The answer names the files it uses. With Claude, the answer streams as the Copilot writes it. |
| Review | Find gaps, disputes and weak sources in the context files. |
| Edit | Say what the open file must say. The Copilot writes a proposal. Read it, then accept or reject it. |
| Draft an ask | Draft clear questions for the people responsible for the open items. |
Press Enter to send. Press Shift+Enter for a new line. Select the mic to talk instead of typing. The mic uses on-device transcription.
Edit any file
You do not select fields. Write what you want, for example "Fill this with your best guess" or "What would a top-tier company do here?".
- Open the file.
- Select Edit and write what the file must say.
- Read the proposal. Field changes show as a diff. Other text shows as a preview under Notes.
- Select Accept or Reject.
What Accept writes depends on the file:
- A record file (Task Card, duty, workflow, handoff, person): a new version of the record, plus Notes when there are any.
- A research file: a correction for one field, or Notes.
- Any other file (operating rhythm, strategy, glossary, charters, roles): Notes.
- A generated file: nothing. The Copilot tells you to open one of the files it is built from.
Notes print in the file as an advisor draft. The label says "Advisor draft — based on common practice, not confirmed by <Company>" for a best guess, or "Advisor draft — from your words, not confirmed by <Company>". The file stays Inferred until a person at the company confirms it. DutyGraph keeps every version of the Notes.
If the file changed after the Copilot read it, Accept stops with "This file changed. Ask again."
Draft an ask
- Select Draft an ask. Write what to ask, or leave the box empty to draft from the conversation.
- Or select Draft an ask about this → under an Ask answer. You do not need to type.
- Read the draft. Each person shows why the Copilot asks them.
- Select Add to Discovery queue. The asks wait as unsent drafts in Discovery › Asks.
- Or select Edit in the composer first to open the draft in the Discovery composer.
The Copilot asks only about missing, unconfirmed or disputed items. It writes one question for each item, at most 10 for each person. It quotes the current value and asks the person to confirm or correct it. Questions without a person wait for Choose who to ask.
When the Copilot does not answer
- No approved AI connection. The Copilot answers only for a company with an approved AI connection. Approve one in the company's Connections (Settings › Connections). Without one, write the questions yourself with Ask the person responsible.
- The sample company. The fictional sample never uses AI connections. Add your own company to use the Copilot.
- The provider refused the key. Check the key in Settings › Research & AI keys, or in the company's Connections.
- Claude or OpenAI. When a company has approved connections for both, DutyGraph uses Claude (Anthropic) for the Copilot. Only Claude streams the answer now. With OpenAI, the answer arrives in one piece.
What the Repo does not do
- The Repo is a view of the database. It is not a second store.
- The Copilot does not send asks. Asks wait in Discovery until you send them.
- A refresh does not write a value. It does not change a fact that a person confirmed.
- A typed Notes editor, a Notes history view, Share links for the Snapshot and Push to GitHub are Planned.
- An initiative record that you can create or edit, a field for the departments that deliver an initiative, department policies and SOPs, and an editor for the refresh sources and cadence are Planned.
See also From Company Research to confirmed work for the Discovery queue and the composer.
Agents: proposed agents and agent manifests
Agents is in the main sidebar, after Opportunities. It has 8 tabs: Workspace (it opens first: the builder on the last agent you opened, else the first proposed agent), Saved agents (the saved agents, with New agent from an opportunity and Start from a person or task), the agent governance tabs Requests, Review queue, Issued agents, Rules and Audit (since October 14, 2026), and Business review (the old Reviews tab). On a phone the tabs have short names: Build, Saved, Requests, Review, Issued, Rules, Audit and Business. Since October 13, 2026 the proposed agents are in Opportunities › Proposed agents: finding an agent is diagnosis, and Agents builds it. DutyGraph makes each proposal from the Company Repo, by code. DutyGraph does not run agents. An agent manifest is a file for the AI tools that the client already uses. The draft gives no access.
Status, October 8, 2026: the Agents pages are built on matt/dev (package A2 of the agent manifest builder). They read the Agents server routes (package A1). When a page cannot read its data, it shows the server's message. It never shows example data in place of your company. No AI call makes a proposal, a marker, a limit or a policy. "Describe the agent" is Planned. It has no input in this version.
The builder workspace (October 13, 2026)
Select Agents in the sidebar and the builder opens on the last agent you opened (else the first proposed agent). An agent also opens from Opportunities (the agent link under a Task Card, or Proposed agents) and from Saved agents. The page header is 1 row (Agents, the tabs, search), and the builder is one workspace:
- 1 bar at the top: Your team (each person with a proposed agent; select a person to see their agents and the systems each one uses, and select an agent to open it), then the draft's state, Save draft and Download .zip. Under it, the Authority line (acts for, owner, limit, pauses, the authority check) opens to the full strip.
- On the left: Agent config, Instructions, Tools and connectors, Context, Human gates, Tests and Handoffs, each a section you open and close. A marker or a policy can only get tighter.
- On the right: the files for the AI tool, as the export writes them, with your unsaved changes applied: Claude Code (the subagent, skill and settings files), Claude Managed Agents, OpenAI Agents (the body of the OpenAI Agents API, beta,
OpenAI-Beta: agents=v1), the DutyGraph manifest (JSON) and the Sheet. Each format has its README.md and GAPS.md. Copy copies a file. - Before it can run lists the readiness checks and the gaps. Nothing there blocks the draft. Under it are Governed access and Share the plan with <person>.
- Save draft saves a version. Download .zip downloads the saved version of the format you are looking at (it saves first when there are unsaved changes).
The OpenAI Agents file: DutyGraph does not choose a model, so "model" says to set it. The OpenAI MCP tool has no setting to ask before it runs, so only the tools DutyGraph allows are listed; the README names each tool that stays out.
Read the proposed agents
Opportunities › Proposed agents gives the answer first.
- The first line counts the proposed agents, for example "2 proposed agents for Cobalt Industrial Supply. Each one acts for 1 named person, inside that person's access."
- The next lines say how DutyGraph made them and how many Task Cards have a proposed AI mode.
- Use the flow chips to show the agents of 1 work flow.
- Each card shows:
- the name and for the person who does the work, with the role and the Owner, who is accountable; - the systems that the Task Cards record; - Proposed: the AI mode on the Task Card, and Limit by rule: the highest mode that the rules allow. When the rules lower the mode, one line says why and names the step ("Lower than proposed: step 4 contacts the supplier."); - the steps where the agent pauses, and what it must never do; - the gaps, the past cases (0 of 3 until people give them) and the tools outside the person's access; - Open template or Open draft. A saved draft shows its version and its state (Fresh, Out of date or Broken). A draft agent that a person made for the same Task Cards shows as Related draft.
- A K1 or K2 chip shows when a possible constraint on the Strategy page links to the agent. Agents and Strategy use the same numbers. Select the chip to open Strategy with that constraint in focus.
Not proposed
DutyGraph does not invent authority. Not proposed lists each Task Card or possible constraint that code did not turn into an agent, with 1 reason. The heading counts the items that it shows. The Task Cards with "People only" are in a closed list with their own count.
| Reason | What it means |
|---|---|
| No accountable owner | Nobody owns the work. An agent needs 1 accountable person. |
| Conflicting accounts | People describe the work in different ways. |
| People only | The Task Card has no proposed AI mode. These are in a closed list. |
| AI not allowed | The Task Card does not allow AI. |
| Route: a change that is not an agent | Route chose a cheaper change first (a decision rule, a process change, training, a setting or an automation). |
Each reason has an ask: the person to ask and 1 question. On your own company, select Draft the ask to open it in the Discovery composer. Nothing is sent until you send it. The sample company does not send asks.
Build a manifest
Select Open template or Open draft. The builder is 1 column, like a "Create agent" page, with a rail on the right for the readiness checks and the export. The fields fill from the Repo when the page opens. Nobody typed them.
The Authority strip stays at the top: who the agent acts for, the Owner, the Scope (each system with the person's access), the Limit, the steps where it pauses and the Authority check (how many tools are within the person's access).
- Starting point. Proposed by DutyGraph shows the templates that DutyGraph made for this company from a person's role, duties and Task Cards. Select another template to open it. If you changed fields, the page asks "Replace 3 edited fields?" first. Describe the agent is Planned and has no input in this version.
- Agent config. The name, the description and the model. DutyGraph does not choose a model: it shows "Not set · the client chooses" until you choose one. Acts for, Owner, Proposed and Limit by rule come from the Repo and you cannot change them here. Select Raw (or press W) to see the exact Repo file, read only. Each id in its frontmatter links to its file. Select Rendered (or press R) to go back.
- Instructions. The Task Card steps, word for word. Each step has a marker that code proposes: A the agent does it, S it needs a recorded approval, H a person does it. A step that code cannot classify is H. You can make a marker tighter (A → S → H). You cannot make it looser. To change a step, edit the Task Card. Add Notes for the agent if the agent needs more words from a person.
- Tools and connectors. 1 card for each system that the Repo records. Each card shows what the steps need, the person's access, the state (Within access, Outside access or Access: Not found) and the Tool permissions. Each operation has a policy: Allow, Ask first or Off. A looser policy than code allows is not available, and its tooltip says why ("The limit is set by the person's access."). Request access drafts an ask to the person who grants access to the system. On a tool with Access: Not found, the button says Ask and the name of that person. The ask is never sent automatically. DutyGraph holds no credential: the card names the person who provides it.
Each card also has an Access editor: the access level of the role to the system (No access, Read, Write or Admin) and its source. Select Save access to record it. You need permission to edit records. Client confirmed needs an answer from the client to the access ask for that role and system. Without that answer, DutyGraph stores Reported. DutyGraph records the level only. It does not change access in the system. On the sample company the access values are fixed. Never allowed (from the Task Card) lists what the agent must never do.
- Context. The Repo files that the agent may read: only files that the person's role may read.
- Human gates. Each step where a person acts, and the person. "Backup Not found" means that the Repo names no backup person.
- Tests. Cases that code makes from the stop conditions. Each one is labelled "Case from a stop condition · not a past case". The header says how many past cases exist (0 of 3 until people give them). Ask the person who does the work for 3 past cases.
- Handoffs. The handoffs to and from other Task Cards, as context only.
Every filled field has a chip such as "from check-supplier-packet/task.md › Rule". Select it to open the file in the Repo. A field that you changed and did not save says "Edited by you · was: …". A saved change says "Edited by" the person who saved it, and the Repo value. A changed field has no Repo chip, because a person wrote the value. Select Use the Repo value to go back to the value from the Repo, then save.
Readiness checks
The rail lists the checks that code makes: an owner is named, the approver is known, no open dispute, the client confirmed the Task Cards, the past cases and the authority check. A gap never blocks the builder or the export.
Save a draft
Select Save draft (or press ⌘S or Ctrl+S). A save that changes the manifest makes a new version: "Saved as v2 · 8 Oct 2026. The draft gives no access." A save that changes nothing keeps the version: "Nothing changed. The draft stays v2." If another person saved the manifest after you opened it, the page asks you to reload. If a marker or a policy is looser than code allows, the page names it and saves nothing.
DutyGraph also saves nothing when a Task Card holds an email address, a phone number or a value that looks like a secret. The message names the Task Card and the field (for example "Stop conditions"). Edit the Task Card, then save again. Your own words (the name, the description and the notes) cannot hold interview or answer words.
A save never writes over a draft agent that a person made. The save makes a new draft, and the builder lists the other draft as Related draft.
Export a manifest
Select Export manifest (or press E). Choose 1 of 4 formats. Each one is "formatted for" its tool:
| Format | Files |
|---|---|
| Manifest sheet | manifest.md, for people to read. Select Print the sheet for a light page to print or save as PDF. |
| DutyGraph manifest JSON | manifest.json (dutygraph.agent-manifest.v1) |
| Claude Code folder | The subagent file, the skill file and a settings fragment |
| Claude Managed Agents JSON | The agent definition. It needs a model: choose one in Agent config first. |
Each format also has README.md and GAPS.md. Select a file in the tree to read it before you download. The preview shows the saved version, or the template when nothing is saved. Changes that are not saved are not in the preview. If your role cannot download exports, the preview shows the file names only. DutyGraph never fills a gap. It leaves the value out of the files for the AI tool and lists it in GAPS.md, with the person to ask. An export with gaps is labelled "Draft · 8 gaps". The download is the saved version, as a .zip file. If you have changes that are not saved, select Save and download .zip.
DutyGraph checks the files again before the download. It refuses an export that holds an email address, a phone number, a value that looks like a secret or interview words, and says which file holds it. A Broken manifest exports only the manifest sheet and the JSON. Review it and save it again before you export it for Claude Code or Claude Managed Agents.
DutyGraph does not run this agent. Load the file into the AI tool that your company uses.
Saved manifests
Agents › Saved agents lists each saved manifest with its version, the person it acts for, the owner and the gaps. DutyGraph compares each cited Repo file on every read:
- Fresh: no cited file changed.
- Out of date: a cited file changed. Select Show changes to see the files. Open the manifest to see each field before and after, then save it again.
- Broken: a cited file was removed or withdrawn, or a cited person left. The files for an AI tool are not available until you review the manifest and save it again.
Select Open to open the builder, or Export to open the export.
Share the plan with the person
Status, October 14, 2026: built on matt/dev, by private link only.
Under Before it can run, Share the plan with <person> sends the saved agent's plan to the person it acts for. Save the draft first: the plan is built from the saved version.
- Select Create a private link for <first name>. The link is shown once and works for 30 days. Select Copy link, Share (the phone's share sheet, where there is one) or Preview. When the company's Resend email is set up, Send by email sends it for you.
- The person opens the plan on their phone. It is labelled "Proposed plan · not deployed" and has 5 parts: What we found, The plan, Your process today and with the agent, How you would operate it and What happens next (the governed access status, read only).
- The person answers This looks right or Something's off, with the parts that are off and a short note. Code removes contact details from the note before they send it. The answer is stored as understood.
- The answer shows in the list of shared plans under the panel (version, when it was shared, whether it was opened, the answer), as an Inbox Review item and as an advisor notification. Select Mark reviewed when you have read it, or Revoke link to stop an open link.
The plan is built by code when you create the link and kept exactly as shared. Your role needs permission to edit records to share a plan. The person cannot open the plan from a DutyGraph sign-in yet; it is a link only. See Run a company through DutyGraph, step 9.
Business review
Agents › Business review holds the agent requests, the manifest drafts and the business review that were on the Governance page. They work as before, for every company. The old address #governance opens this tab.
Governed access and the governance tabs
Status, October 14, 2026: the governance tabs work on the Wesco sample (/app?sample=wesco) and on any company of your own after Set up governance. A company without its packs (the Cobalt sample, a new client) shows "Governance is not set up for this company yet" on these tabs, with Set up governance for an advisor.
Set up governance for a company
Open Agents › Rules and select Set up governance (#gov/setup; once set up, Change packs on the Rules tab). Load the 6 packs:
| Pack | How to load it |
|---|---|
| Agent rules | Use the default agent rules: 14 neutral rules, including the ceiling (an agent's scopes never exceed its owner's), an end date for every agent and AGT-12 "No agent approves work: approvals stay with people". Or upload your own pack (JSON) |
| Segregation of duties | Use the default SoD pairs: 12 generic conflicting pairs (create a vendor and pay it, enter and approve the same invoice …). A pair applies only when the catalog has scopes on both sides. Or upload your own |
| Mitigating controls | Add each control (id, name, owner role, Agent-eligible), then save. It can stay empty. Only an agent-eligible control lets a reviewer keep a conflicting scope for an agent |
| System catalog | Use the catalog built from Task Cards: the systems the Task Cards name, with scopes written system/action:object. Add systems and scopes, then Save this catalog |
| Who holds which access | Choose a CSV file or paste the access export, then Preview. The preview lists the matched people, the people not found in the company and the access that maps to no catalog scope; those rows are not loaded. Then Load this export |
| Approval chain | For Manager, Role owner, Internal Controls and IAM, choose a person from the company, or Requester's manager for the manager step. Save the approval chain |
Each load is a new version of the pack and is sealed on the hash-linked ledger. Each load also gives people PER- ids and Task Cards with an AI mode TSK- ids (Assign registry ids does it on its own). DutyGraph reads the access export as of the day it was exported; it does not connect to the company's identity or access system. Only an advisor sets up governance. A sample's packs are fixed.
On your own company, only the Task Card's owner can start an agent's access request, from their own DutyGraph sign-in, and each approver decides from their own sign-in. There are no personas outside the samples.
The governance tabs
- Governed access in the builder, under Before it can run, shows when the agent's Task Cards map to the governance records. It shows the access request for the agent, or a suggestion, or Start the access request (only for the owner's own sign-in). On the sample the button reads Start the access request as Aisha Bello (sample persona). The panel reads or starts a request. It never decides.
- Requests (
#gov/requests): the governance overview, then each request. A request channel asks 1 question, then shows the proposal: each scope inherited, escalated or removed, with its rule. Select Submit to the approval chain. - Review queue (
#gov/review): the requests at your step. Each approver selects a decision and Record the decision. After the chain, Record the issuance on the issue screen. The gateway token shows once. - Issued agents (
#gov/agents): each issued agent. Try an action shows the gateway check: an allowed call passes, a call outside the rules is blocked. - Rules (
#gov/rules): the rule packs and the control library. - Audit (
#gov/audit): the Register, the Ledger (Verify chain) and the Auditor workspace. - Rules › Set up governance or Change packs (
#gov/setup): load or change the company's 6 packs (above).
On the Wesco sample, Okta, Entra, Saviynt, ServiceNow and Oracle are simulated, and the approvers are sample personas that you operate (Acting as). See Run a company through DutyGraph, step 8.
The Repo file
The Repo file of a saved manifest (manifests/<slug>.md) lists a permission only for a tool that a policy allows and the role's recorded access covers. authority_ceiling is the role that the agent acts for, and accountable_role is the owner's role. The stop conditions and the cases made from them stay in Agents. They are not in the Repo file.
Other ways in
- Strategy › Summary: a possible constraint card shows Proposed agents: N → when an agent links to it.
- Work Map › Value chain: with the Automation candidates lens on, select Open in Agents →.
- Work Map › Task Cards: select a Task Card with a proposed AI mode, then Make a manifest → in the inspector. If code did not propose an agent for it, the page says why.
The sample company
On the sample company (Cobalt Industrial Supply, fictional) each page shows 1 Sample output · no AI call chip, and the Proposed page and the builder end with a line that names the sample. The markers say "Proposed by code · sample". The access values are labelled "Reported · sample". Asks and Request access stay on the page and are not sent. The sample never calls an AI provider.
What Agents does not do
Agents does not run, start or connect an agent. It grants no access and holds no credential. The builder records no approval: a draft is a proposal until the client's own process approves it. The governance tabs record decisions on the Wesco sample and on companies with governance set up; DutyGraph does not provision the agent in the company's identity system. Past cases and loading a manifest into an AI tool are Planned.
Route: the change for each possible constraint
Route's pages are in Opportunities since October 13, 2026: the Changes tab (the Map opens from it, at #opportunities/changes/map) and the What AI can do today tab. Old #route links open the same pages. DutyGraph shows the changes for each possible constraint. A person chooses. DutyGraph does not run the change.
Status, October 9, 2026: the Route pages are built on matt/dev (package R2 of Route). They read the Route server routes (package R1) and the patterns research refresh (package R3). When a page cannot read its data, it shows the server's message. It never shows example data in place of your company. No AI call makes a verdict, a fit, a value or an order on these pages. Code makes each one from the Company Repo.
Before you start
Route shows a card only for an accepted possible constraint. If the Changes tab says "Accept a possible constraint in Strategy first", open Strategy › Constraints, review the possible constraint and select Accept with an owner.
Read the Changes tab
- The first line counts the changes, for example "3 changes for Cobalt Industrial Supply. 2 need no new software."
- The next line says what Route does and does not do.
- The numbers tray says how many numbers are Not found and how many people can answer. Select Draft asks to draft 1 ask for each person, with all of that person's questions. Nothing is sent until you send it from Discovery › Asks. The sample company does not send asks.
- Each row is 1 route card:
- K1, K2: the possible constraint, with the same key as on Strategy. K2/b is the rival explanation of K2; - the flow and the constraint type; - Chosen change: the change that the rules choose, with its rung number; - the value line: the hours in scope with the evidence word, or "Not found" with the number of inputs to ask; - the status and the next step.
- Select a row to open its route card.
A rival card reads "Not the possible constraint · no throughput gain claimed". It can release hours, but it does not change what limits the flow.
Read a route card
A route card answers 3 questions: where to change the work, why, and how to prove it.
The header
- The key, the flow and the statement.
- Type: what the work waits for and what releases it. Example: "C · Policy: a rule to meet". When nobody owns a Task Card, the type is "Owner not agreed" and the first change is to name the owner. No AI rung is offered until then.
- Scope: the Task Cards that the possible constraint cites as evidence. Counter-evidence is never routed.
- The evidence for the type, with a chip for each Repo file. Select a chip to open the file in the Repo.
Changes considered, cheapest first
The ladder has 9 rungs: 0 No change, 1 Remove the work, 2 Decision rule or owner, 3 Process change, 4 Training or a backup, 5 Setting in a system the company has, 6 Automation with no AI, 7 AI, 8 Hiring or outsourcing.
Each rung has 1 verdict:
| Verdict | Meaning |
|---|---|
| Chosen by rule | The first rung, in the order of the type, that fits. |
| Fits | The rung can work. It is not the first that fits. |
| Does not fit | A recorded fact rules it out. The reason names the file. |
| Not enough data | A number or a fact is Not found. The row names the person to ask. |
| Not proposed | DutyGraph does not offer this rung (for example AI on People-only work). |
Each reason has a chip for each Repo file. Each missing input shows "Not found" and Ask <name>. When the answer arrived and waits for a review, the chip reads Answer waits for review, and the numbers tray does not ask for it again. On a phone, select Why to open the reasons of a rung.
Sometimes code chooses no rung yet. The card then says Answer the asks first (the type of the wait, or a cheaper rung, waits for an answer) or Test first (the diagnosis is not ready, so the rungs from a system setting up wait for the discriminating test). The rungs that wait for the test show Test first next to their verdict. The Changes row, the slides, the print page and the Strategy link show the same words.
Value: hours in scope
Value is a range of hours a month, and nothing else.
- The formula: hours in scope a month = runs a month × minutes per run ÷ 60.
- Each input is a chip with its evidence word and its file. A missing input is a dashed chip with Ask <name>.
- When an input is missing, the value is Not found. It is never 0.
The card also says: "Hours in scope. This is the work that the change can touch. It is not a saving." and "Cost per hour: Not found. DutyGraph shows no money value without it." Ranges are never added across cards that share Task Cards.
AI fit
For each Task Card: the fit profile (input form, rule or judgment steps, exceptions, rework, volume, minutes, wait, system access, risk class, data sensitivity, whether the output can be checked, the physical share). Each factor shows its value, its evidence word and its source, or Not found. Still not found names who to ask, apart from the numbers. A role that fewer than 3 people on the team list hold prints as "the performer", so a number does not point to 1 person. It is a profile, never a score.
Under the profile, the patterns from What AI can do today that fit the Task Card: Fits or Fits with gaps, the steps they cover, the band "Assumption · DutyGraph curated · as of <date>", the known failure modes and the person checks. A Task Card with "People only" shows "No AI" even when a pattern fits its steps.
Still not found, proof and the decision
- Still not found lists each missing number with its question and the person to ask.
- Proof plan: Baseline · Pilot · Window · Stop rule, the guardrail and the result words (Supported · Not supported · Inconclusive). The window of the baseline and of the pilot is at least 10 runs over at least 14 days. When there is no baseline, the next step is Collect the baseline first. Code sets the result word. A person can lower it to Inconclusive and cannot raise it.
- Decision: select Accept the route… (see below). After a decision, the card shows it and offers Change the decision….
- Next step: by the chosen change, or by the recorded decision when there is one. AI → Open in Agents. A system setting or automation → Export work order (draft). Rungs 1 to 4 → Record a decision rule (before a decision only). Every card → Track in Outcomes.
The actions show only to a member who can do them: Accept, Start the baseline, Change the decision and Choose this change instead need the right to edit records. Export work order needs the right to download exports.
Start the baseline
"Supported" needs a baseline that was recorded before the prediction. Start it before you accept a change.
- On the route card, in Proof plan, select Start the baseline….
- When the card suggests the owner's measure, keep Use the owner's measure selected, or clear it to make a new measure and write its unit.
- Choose the owner of the measure.
- Write the guardrail (the measure that must not get worse) and whether it is worse when it goes up or down.
- Select the box, then select Start the baseline.
DutyGraph makes the measure and the guardrail measure. It does not choose a change. Open each measure (in Outcomes, or from the record) and select Record observation for each reading. Until it has a baseline value, the measure reads "Collecting baseline · <n> readings". A reading can count several runs: write them in Runs this reading counts. The card shows "Baseline: <n> readings over <d> days" when the baseline has at least 10 runs over at least 14 days. Accept then uses the same 2 measures.
Accept a route
- Open the route card and select Accept the route… (or Record a decision rule).
- Choose the change. The rung chosen by rule is selected. Any other rung needs a written reason, and so does a Test first rung. When code chose no rung yet, no rung is selected and every rung needs a reason. The card then shows "Chosen by <your name>: <reason>". The list leaves out the rungs that do not fit and the rungs that DutyGraph does not propose.
- Choose the owner of the change.
- Write the prediction before the pilot: low, high, unit and direction. When you started the baseline, use the unit of its measure.
- Write the guardrail, the window, the stop rule and the review date. When you did not start the baseline, you can choose an existing measure as the guardrail measure in Guardrail measure, or keep Draft a new measure.
- Select the box to confirm that you record the decision, then select Record the decision.
Accept writes an intervention and, when you did not start the baseline, a measure and a guardrail measure. Rungs 1 to 4 also write a decision record. Outcomes tests it. A baseline that you record after Accept counts, but the result is then Inconclusive at most. If the server says the ladder changed after the page loaded, select Read the route again and check the ladder. If it asks for a reason, write the reason for your choice.
When you record an outcome that the proof rule does not allow, the message names each check that fails ("Baseline size", "Baseline recorded before the prediction" …) and the word that you can record.
Change the decision
A card has 1 decision. To replace it:
- On the route card, select Change the decision… (or Change the decision to this change on a rung).
- Choose the new change and write its reason, as in Accept.
- Select Record the decision.
The new decision replaces the recorded one. DutyGraph stops the recorded decision and keeps its record, its measure and its outcomes. A second Accept without Change the decision is refused.
Read the Map
The Map is the value chain strip: 1 row for each flow and 1 column for each stage that the Task Cards record (when no Task Card records a stage, the columns are the order of the flow). Each Task Card shows 1 chip for each route card that routes it, in the colour of its rung class. The legend names each colour and shape.
Under the strip, Hours in scope draws 1 bar for each range. The Not found (no bar) lane is always on the page, with its count. The Map is not a 2×2: a 2×2 would put Not found at 0.
What AI can do today
The 12 patterns of the curated library: what each one does, its inputs, when it fits, the band with its date, the failure modes, the person checks, the pilot measures, the effort and the Task Cards of this company that fit. An entry older than 90 days reads "Out of date · check again". The bands are assumptions with a date, not results for your company. The client's own pilot replaces them.
Under Options found by research, a pattern shows the current tools and features that a research run found, in 3 groups and always in this order: a feature in a system the company has, a workflow tool, a product for this kind of work. Inside a group the options are in alphabetical order. DutyGraph does not rank them or choose a tool. Each option shows its word (Reported, or Reported by the vendor when the source is the maker's own site), the date of the source and the site. A group with fewer than 2 options says "Fewer than 2 found". An option older than 90 days reads "Out of date · check again". Your system may already do this shows only for a system that the client confirmed, and its licence stays Not found until someone answers.
Refresh asks for your consent, then starts the research refresh. It searches only the patterns that fit this company and the systems the client confirmed. Each result needs a source URL and a date, and goes to review before it shows. When the server refuses (no research source, too soon after the last run, a run already active, the monthly cap), the page shows its message. On the sample company, Refresh makes no web search and no AI call: it loads the authored sample options, labelled as a sample.
Present and print
- Present (key P, on a computer) opens the deck on slide 8, after the 7 Strategy slides: 8 the map, 9 the first card's ladder, 10 the second card (owner first) and its rival, 11 the proof plans, 12 what is still Not found and who to ask. Each slide fits the screen at its own size, with text of 18 px or more on a 1440 × 810 screen. Slide 8 shows 1 cell per flow and stage, with the route chips and the number of Task Cards. Slide 9 shows the first reason of each rung on 1 line. Slide 12 shows the 4 people with the most numbers, 2 questions each, "and N more numbers", and "This slide shows 4 of 9 people". The Route page shows everything.
- Print prints 1 card on 1 A4 page in the light palette with a source footer: the header, the ladder as a table with 1 line for each rung, the chosen change, the value line, the proof plan, the first 6 Not found asks ("And N more numbers"), the decision and the next step. On the Changes tab, Print gives the list on page 1, then each card on its own page (3 cards: 4 pages). The print page has no buttons and leaves out the AI fit tables. Open the card for the full detail.
- On a phone, the ladder is a list, the inputs stack, the next step stays at the bottom of the screen and there is no Present.
Other ways in
- Strategy › Summary: a constraint card with a route shows "Route: <chosen change>".
- Agents › Not proposed: "Route: a change first" opens the route of that possible constraint.
- Work Map › a process › Route: the route cards of that flow.
What Route does not do
Route shows no money, no savings and no ROI. It does not rank vendors or show their logos. It does not say "proven": a supported pilot reads "Supported by 1 pilot · <dates> · not proven". It does not run a change, an automation or an agent.
Opportunities: your team's hours and the proposed agents
Opportunities is in the main sidebar, after the Work Map. It says what to change. Each tab is a place where you act:
| Tab | What you do there |
|---|---|
| Your team (it opens first) | See each person's Task Cards in hours a week, switch to With proposed agents for the time back, and open an agent in the builder from its Task Card |
| Proposed agents | Open a proposed agent, or draft the ask that unblocks one that is not proposed (Agents guide) |
| Possible constraints | Accept or reject each possible constraint (C1, C2 …) with an owner or a reason. The Theory of Constraints exhibit opens from a constraint (Strategy guide) |
| Changes | Choose and record the change for each possible constraint, cheapest first, and draft the asks for missing numbers. A change's AI fit opens What AI can do today (Route guide) |
Status, October 13, 2026: built on matt/dev; the hours ranges and the AI-fit proposals were added on October 14. DutyGraph does not run or deploy agents. It builds them and exports them to the client's own AI tool.
Your team
The people are the page. One line at the top gives the numbers (the mapped hours, the people, how many Task Cards have their time, the proposed agents) and the toggle. Each bar is a Task Card, as long as the hours a week it takes, on 1 scale with the hours at the top. Each person has a row, grouped by team. The teams and people with a proposed agent come first.
- Current process. The agents' Task Cards are a light gray: today's process is not a warning. Other Task Cards are a darker gray.
- With proposed agents. Each agent's Task Card splits into the person's time with the agent (solid green) and the time back (a lighter green hatch, inside today's length). The right column adds "+… h back".
- The team's time back shows in the top line when the toggle is on With proposed agents (5.5–14.5 h a week on the sample).
- ✦1 Supplier record drafter → under a Task Card opens that agent in the builder, filled from that person and Task Card. The number is its rank: a link to a possible constraint first, then the time back.
- ⚑ C1, C2 mark a possible constraint (C for constraint; the keys were K1, K2 before October 13, 2026, and old K links still open). Select How is this worked out? for the arithmetic, and Show as a table for the numbers.
On a phone (760 px wide or less) the page puts the numbers first: 1 line (the mapped hours, the people, the proposed agents) with Details under it (how many Task Cards have their time, Reported, How?), then a 1-line Today | With agents switch. The legend and the scale notes sit under Key, closed. Each person is a card: name, role and total, 1 full-width bar on the team's scale, then each Task Card with its hours. The agent chip opens the builder and the C1, C2 chip opens Possible constraints with that constraint in focus; both have a 44 px tap target. On the other tabs, Proposed agents keeps the headline and puts the page sentence under How these are proposed, Possible constraints lists each flow on 1 compact row, and Changes gives each card the full width and leaves out Print.
Where the hours come from
- Each role template's team questions ask "About how many hours a week does this take?" (question 3, after the walk-through of the work). Discovery also asks the person who does a Task Card with no time: "How many hours a week do you spend on {task}, as a low and a high number?". On the answer page the person taps a range (Less than 1 hour, 1–2, 2–5, 5–10, 10–20 or More than 20 hours) or Not sure. Code reads the range, with no AI, and it reads Reported.
- An ask about 1 Task Card gives that card its hours when the person answers. A template answer is about work that has no Task Card yet: when 1 Task Card is drafted from the answer, the hours go to it; when several are drafted, Repo › To review asks which card they are for.
- With no answer, the time is runs a month × minutes per run, when Route has both numbers.
- A Task Card with neither shows time not captured, striped and off the scale. It is never 0.
- The hours with an agent are a prediction (Predicted). Only the sample companies have predictions. A real company has none until one is recorded, and the page says "Not predicted yet". After a pilot, Outcomes shows the measured hours.
- Capacity back = today's low − with-agent high, up to today's high − with-agent low. It is time for other work. It is not a saving, and DutyGraph shows no money.
The sample company's hours are fictional, authored answers. They read Reported · sample and Predicted · sample.
Known limit. This view shows time by a named person. The Route rule (no screen groups time by a named person) is not applied here yet. Use it with advisors, forward deployed engineers and investors on fictional or consented data until that is settled.
A real company's first proposed agent
On a real company the page starts empty: "No hours captured yet", and no proposed agent. Code proposes an agent only for a Task Card with an accountable owner and a proposed AI mode, or one that an accepted possible constraint cites.
The AI-fit pass (since October 14, 2026) fills most of this for you, by code and with no AI call. After Task Cards are drafted or changed, it reads each card and leaves proposals in Repo › To review, under AI modes, owners and hours for Task Cards:
- an AI mode for a card still on "People only", with a plain reason (for example, a step that moves money keeps a person deciding);
- the person who does the work: the person whose answer the card was drafted from;
- an owner: that person's manager in the roster;
- which Task Card a template hours answer is for, when several were drafted from it.
Select Accept the mode, Accept the owner, Accept or the Task Card, or Not now. Nothing changes until you accept. The pass does not run on the sample companies.
While proposals wait, Your team says what is missing (and Proposed agents says it when no agent is proposed), for example "2 Task Cards need an AI mode and 1 needs an owner — review the proposals in Repo › To review.", with Open To review.
To get the first proposal:
- Draft Task Cards from the team answers (Discovery › Draft task cards, which needs OpenAI, or write them yourself).
- Accept the proposals in Repo › To review.
- Where nothing is proposed, name an owner or set a proposed AI mode by hand: in Work Map › Task Cards, select the card, then Open Task Card and Edit record. Set Proposed operating mode. Or accept a possible constraint that cites the card. Not proposed says "No accountable owner" until there is one; select Draft the ask to ask who owns it.
- For a card with no time, ask the person who does the work (Open the asks).
See Run a company through DutyGraph, step 7.
Run a company through DutyGraph
This guide is for a new advisor or forward-deployed engineer (FDE). It follows 1 company from its website to an agent with governed access, in 9 steps. You can do most of it from a phone. Each step has 3 parts: What you do, What happens behind the scenes and On your phone. A "Where it stands today" note ends each step. It says what works now and what is Planned.
Status, October 14, 2026: written against matt/dev, and updated the same day for governance setup, the agent plan page, the hours ranges and AI-fit proposals, phone notifications and Share…. "Planned" means not built. Do not show a Planned item to a client as available.
At a glance
| Step | Where in the app | Status today |
|---|---|---|
| 1. Add the company and research it | Home › Add a company (Companies › Add account) › Research <company> now › Overview and Repo | Works |
| 2. Build the sponsor packet | Overview or Discovery › Prepare first touch › the composer (#discovery/compose/first-touch) | Works |
| 3. Send it and get the answers back | Composer › Send batch or Create a private link › Share… › Inbox › the returned package | Works. The notice to you is email (Resend) and, when the server has push keys, a phone notification |
| 4. Plan and schedule the kickoff | Prepare meeting agenda › Approve agenda › Schedule and invite | Works. Schedule means a calendar file (.ics). A calendar connection is Planned |
| 5. Bring the kickoff transcript in | Discovery › Understand the business, together › Transcript or additional notes | Partial: paste only. Needs OpenAI |
| 6. Send asks to each person | Make team questions › Discovery › Asks › Review and send (or Create links for all) | Works. The loose map needs an approved AI |
| 7. Find AI opportunities | Opportunities › Your team and Proposed agents; Repo › To review for the proposals | Partial: hours and proposals need no AI; you accept each proposal. Predicted hours only on the samples |
| 8. Turn an opportunity into a governed agent | Agents › Rules › Set up governance (once) › Open draft › Agents builder › Governed access › Agents › Requests, Review queue, Issued agents, Audit | Works for any company after Set up. The Wesco sample is ready to run |
| 9. Show the person their agent plan | Agents builder › Share the plan with <person> › the private plan page (/plan/<token>) | Works, private link only |
Before you start
- Open Settings › Research & AI keys. Save the keys you have: OpenAI, Anthropic (Claude), Exa and Resend. Select Test on each key.
- Research needs a research source: an Exa key, or a source that your operator set up on the server. Home shows Connect research until one exists.
- Email needs Resend. Without it, DutyGraph gives you a private link to send from your own mailbox. Home shows Set up email until it is set up.
- A saved key does not apply to a company by itself. For each company, open Settings › Connections and select Approve firm key for this company. Do this right after step 1.
- Optional, on your phone: open Settings › Workspace › Phone notifications and select Turn on notifications on this phone. On an iPhone, first add DutyGraph to your Home Screen (iOS 16.4 or later) and open it from there. The server operator must set the push keys first; without them the panel says "Not set up on the server".
Why the company approval matters: without an approved AI, the answer pages do not polish what people say, the Repo does not read answers into facts and hours, and the Copilot does not answer. Company Research, the first touch, the kickoff and the team questions work without AI.
Step 1. Add the company and research it
What you do
- On Home, select Add a company. It opens Companies › Add account. The Add a company item in the company switcher opens the same dialog.
- Choose a tab. For a company you already work with, choose Already engaged in DutyGraph. Choose the activation method and write 1 line in Why is it active?. For a prospect, choose From your book of business.
- Enter the company name, the website, the contact's name and title, and the contact's work email. Select Add account.
- Select Research <company> now. If you closed the dialog, open the account in Companies and select Run company research on its Research tab.
- When the run ends, select Open company workspace. Read the Overview (the Company Snapshot), then open Repo.
A prospect's sidebar shows only Overview, Repo and Reports. Discovery and the Work Map open when the engagement is active. Record the commitment in Settings › Company account.
What happens behind the scenes
- DutyGraph creates an account, a contact and an engagement for the company.
- The research run reads public sources about the company. Each finding keeps its source and its state. A finding from research is Inferred until a person at the company confirms it.
- From the findings, code proposes a company shape: the kind of business, the departments and the main processes.
- The Repo is built from the stored records each time you open it. It uses the same folders for every company (company, departments, roles, people, duties, tasks, flows, systems, policies and more). Department files from the shape show as Proposed until you accept the structure.
- If research finds nothing, the Overview says "Research ran but found no facts". DutyGraph does not invent a value.
- A run with the simulated provider says "Simulated (not real data)". It is not real research.
On your phone
The dialog, the account drawer, the Overview and the Repo all work on a phone. The Overview opens on a row of quick actions: Ask Copilot, the section jumps, Work Map, Opportunities and Send an ask. In the Repo, Files is a list. A file opens full screen with a back bar.
Where it stands today. Works. The Repo folders are the same for every company. Only the department and process files change with the company shape, and they stay Proposed until you accept them. A single "add and research" button for an FDE engagement is Planned.
Step 2. Build the sponsor packet
What you do
- On the Overview or on Discovery › Plan, select Prepare first touch for <name>. If it opens the Plan, select it again on the current step to open the composer (
#discovery/compose/first-touch). - Read the sponsor packet: what the sponsor is asked to do. They check the company picture, answer the research gaps, upload the team list, choose the kickoff attendees, confirm the scope and add documents.
- Edit the questions and the email wording. Remove a question that does not apply.
- Select Save draft. The preview opens: the email and the answer page, on desktop and on mobile.
What happens behind the scenes
- DutyGraph saves the ask as a draft. Nothing is sent until you send it.
- The sponsor's answer page is a private link. It opens without an account.
What the sponsor sees on the private page, 1 screen at a time:
- Start with voice or Type instead.
- Is this right?: the role, the headcount, the goals and the company facts from research. The sponsor corrects them.
- The questions, 1 for each screen. The sponsor can say I do not know yet or Someone else should answer.
- Who works here?: upload a CSV, paste a list or add people by hand. The CSV columns are
name,email,role,department,manager_email. A template is on the page. Each person has an Executive kickoff tick and a Pilot discovery tick. The sponsor is ticked for the kickoff. - Anything else?, then Here's what we heard, then the consent tick and Send to <advisor>.
The page saves a draft as the sponsor goes. If they close it, the answers and the team list stay.
Here's what we heard polishes the sponsor's words only when the company has an approved AI. Without one, the page shows the answers as the sponsor gave them. DutyGraph always keeps the sponsor's own words. The polished text is the version the sponsor confirms.
On your phone
The composer and the preview work on a phone. The sponsor's page is built for a phone first.
Where it stands today. Works. A second way to prepare the same packet is the workbench card further down Discovery. Use the composer.
Step 3. Send it and get the answers back
What you do
- In the composer, select Send batch when email is set up.
- Without email, select Create a private link for the sponsor. DutyGraph shows the link once. Select Share… to send it from your phone's share sheet (Messages, WhatsApp, Mail and others), or Copy and send it from your own mail. Where the browser has no share sheet, Share… offers Copy link, Email and Text message.
- When the sponsor sends the packet back, the Inbox shows "<name> sent the answers back". Select it. The returned package opens in Discovery (
#discovery/kickoff/<id>). - Read the answers and the corrections. Select Confirm roster & populate org chart to import the team list. The people then show in Work Map › People.
If a link is lost, open Discovery › Asks, open the ask and select Create a new private link. The old link stops working.
What happens behind the scenes
- The send records the ask and the private link. A private link works only for its own ask.
- The sponsor's answers are stored as 1 answer record, with the team list, the attendee and pilot choices, and the documents.
- When the answer arrives, DutyGraph writes an advisor notification in the same step. It sends an email to you through the workspace Resend settings, or through the operator's fallback sender. The email links to the signed-in app, never to the private link.
- If you turned on phone notifications, each of your devices also gets a notification such as "<company>: sponsor package returned". It shows the company and what happened, never the answers or a link to send. Tapping it opens your Inbox. A team answer and an answer to an agent plan (step 9) notify you the same way.
- Share… sends nothing itself. You choose where the link goes.
- The roster import shows a preview first: missing values, bad addresses, duplicates, unknown managers and reporting loops.
On your phone
The first time you open Home or the Inbox on a phone, a card offers Get notified on this phone: select Turn on, or Not now. You can change it later in Settings › Workspace. The Inbox groups items as cards: Review, Decide and Send / Chase, each with 1 action. The returned package page is long on a phone. Scroll to Confirm roster & populate org chart.
Where it stands today. Works. Your notice is an email when Resend is set up, and a phone notification when the server has its push keys (VAPID_PUBLIC_KEY,VAPID_PRIVATE_KEY,VAPID_SUBJECT) and you turned notifications on. Without either, the notice is stored and not sent: check the Inbox. On an iPhone, notifications need the Home Screen app (iOS 16.4 or later). Share… is on each private link in the Discovery composer (first touch and team questions), on the kickoff pre-read links and in the Companies outreach composer.
Step 4. Plan and schedule the kickoff
What you do
- In the returned package, select Prepare meeting agenda. The composer opens on the kickoff (
#discovery/compose/kickoff): the brief, a standard 2-hour agenda and the attendees. - Select Approve agenda. DutyGraph records who approved it and when.
- Optional: select Prepare meeting guide for an AI guide with 8 topics.
- Select Schedule and invite. Under Invite the executives, set the date, the time, the time zone and the place. The attendees are the people the sponsor ticked.
- Select Send kickoff invitations to send email with a calendar file and the pre-read. Without email, select Create links without email. Send each pre-read link with Share… (or copy it) and select Download calendar file (.ics).
What happens behind the scenes
- Code builds the standard agenda. No AI writes it.
- The approval is stored with the plan it approved.
- Each executive gets a private pre-read page: the date, the place, the agenda, a Yes or Can't attend reply, and optional pre-work questions.
On your phone
It works. The time zone is a text field with a name such as America/Chicago. Check it: it starts as your phone's time zone.
Where it stands today. Works. The approval and the schedule are on 2 different screens, and you can schedule before you approve. "Schedule" means a calendar file. DutyGraph does not read calendars or find a time that suits all executives. A calendar connection is Planned.
Step 5. Bring the kickoff transcript in
What you do
- After the meeting, open the kickoff step in Discovery. The section Understand the business, together has 8 topics with notes.
- Open Transcript or additional notes. Paste the transcript or your notes, up to 20,000 characters.
- Optional: under Kickoff notes, record who said what, and pick the speaker for each statement.
- Select Save outcomes & review team. Step 3, Review people & duties, opens.
What happens behind the scenes
- DutyGraph saves the transcript as evidence from the leadership meeting and marks the kickoff as held.
- An AI job (OpenAI) reads the transcript. It drafts each person's role, department, manager and duties. These are proposals for you to review. They are not facts until a person confirms them.
- Attributed notes become proposed research updates. Code does this, not AI.
- If the AI job fails, the page says so. Your existing records do not change. The team list from the CSV keeps the departments.
On your phone
You can paste on a phone, but a long transcript is easier on a computer.
Where it stands today. Partial. Paste only. The screen does not record or transcribe audio, and it does not take a file (.txt, .vtt or .docx). It does not find the speakers in the transcript. It does not group the output by department. The people and duty drafts need an OpenAI key. Transcript file upload, speaker lines and audio are Planned.
Step 6. Send asks to each person
What you do
- In Discovery, select Make team questions. The composer opens on Team question sets (
#discovery/compose/team). - Pick the people. The executives come first. Select a name to add a person.
- Select Save drafts. DutyGraph makes 1 draft for each person.
- Open Discovery › Asks. Select Review and send. With email, select Send batch. Without email, select Create links for all (N) under Send to everyone at once. DutyGraph creates each person's private link and lists them, each with Share… and Copy, plus Copy all (1 line per person: name and link). Save or undo your changes first: the links open the saved drafts. You can still select Create a private link for 1 person at a time.
- When a person answers, the Inbox says "<name> answered". In Discovery, read the returned answer. Select Accept answer, then Draft task cards to draft that person's Task Cards. You can also select Create task card from this answer and write the card yourself.
- Open Work Map › Task Cards and Repo › To review to see the map form.
What the person sees on their phone: Start with voice or Type instead, then 1 question for each screen, Anything else?, Here's what we heard and Send to <advisor>. Question 3 of each role template is "About how many hours a week does this take?". The person taps a range (Less than 1 hour, 1–2, 2–5, 5–10, 10–20, More than 20 hours) or Not sure. See Answer a work request from your private link.
What happens behind the scenes
- DutyGraph keeps the person's own words as evidence, marked as proposed. It also keeps, for each question, the version the person confirmed on Here's what we heard.
- The fill loop reads answers into facts, such as hours a week. It stores a pointer to the person's words, not a copy of the quote. It runs only when the company has an approved Claude or OpenAI connection. Without one, it waits.
- Draft task cards uses OpenAI. Each drafted card is Proposed and Inferred. An owner or a role can be missing. The card says so.
- Reminders, with email, go at most once a day and at most 3 times.
- The hours range needs no AI to read. It becomes a Reported hours-a-week reading for the Task Card (step 7).
- Create links for all sends no email. Each link is shown once and opens only that person's questions.
On your phone
The answer pages are built for phones. On your side, Asks starts with Send an ask, and the team composer shows people as chips over a searchable list.
Where it stands today. Works. Without email, Create links for all makes every person's link at once. The role templates ask for hours as ranges. Drafted cards often have no owner; the AI-fit pass in step 7 proposes the person's manager as the owner for you to accept.
Step 7. Find AI opportunities
What you do
- Open Opportunities. Your team shows each person's Task Cards as bars, in hours a week.
- Open Repo › To review. The group AI modes, owners and hours for Task Cards holds what code proposed for each Task Card: an AI mode with a plain reason, the person who does the work, an owner, or which Task Card an hours answer is for. Select Accept the mode, Accept the owner or Accept, or Not now. For an hours answer, select the Task Card it is about. Nothing changes until you accept.
- A Task Card with no hours shows time not captured. The hours question is "How many hours a week do you spend on <task>, as a low and a high number?". It goes to the person who does the work, who answers with a range. Select Open the asks, then Send an ask to that person.
- Open Proposed agents. Each proposed agent acts for 1 named person, inside that person's access.
- If no agent is proposed, the page says what is missing, for example "2 Task Cards need an AI mode and 1 needs an owner — review the proposals in Repo › To review." Select Open To review. Also read Not proposed: each item has 1 reason, such as "No accountable owner". Select Draft the ask to ask the right person.
- You can still set a proposed AI mode by hand: in Work Map › Task Cards, select the card, then Open Task Card and Edit record. Set Proposed operating mode. "People only" and "AI not allowed" do not give an agent.
See Opportunities.
What happens behind the scenes
- Code builds this page. No AI call makes a proposal.
- Hours come from the person's answer (Reported), or from runs a month × minutes per run. A card with neither is never shown as 0. A range the person tapped is read by code, with no AI.
- The AI-fit pass is code. It runs after Task Cards are drafted or changed. It reads each card's steps and proposes an AI mode for a card still on "People only", with the reason (for example, a step that moves money means a person decides). It proposes the person whose answer the card came from as the performer, and that person's manager in the roster as the owner. It leaves each proposal in Repo › To review as a
task_proposalrecord. It does not run on the sample companies. - An hours range from a role template is about work that has no Task Card yet. When 1 Task Card is drafted from that answer, the reading goes to that card. When several are drafted, To review asks which card it is for.
- Code proposes an agent when a Task Card has an owner and a proposed AI mode, or when an accepted possible constraint cites it.
- The hours with an agent are a prediction (Predicted). Only the sample companies have predictions. A real company shows "Not predicted yet" until one is recorded.
On your phone
The page leads with 1 line of numbers, a Today or With agents switch, and a card for each person. The tabs are short on a phone: Team, Agents, Constraints, Changes. The proposals in To review are cards with 1 tap to accept.
Where it stands today. Partial. Hours and the AI-fit proposals need no AI, but you accept each proposal; nothing is applied by itself. Task Cards still come from Draft task cards (OpenAI) or from you. The time with an agent is predicted only on the Cobalt and Wesco samples, whose hours and predictions are authored sample values.
Step 8. Turn an opportunity into a governed agent
What you do: set up governance once for the company
Skip this on the Wesco sample: its packs are already loaded and fixed.
- Open Agents › Rules. A company without governance shows "Governance is not set up for this company yet". Select Set up governance (
#gov/setup). Later, Change packs on the Rules tab opens the same screen. - Load the 6 packs below, in order. Each one says Not loaded until you load it. Select Set up on a pack to open it.
- Agent rules: select Use the default agent rules (14 neutral rules: an agent never goes beyond its owner's access, every agent has an end date, and AGT-12 "No agent approves work: approvals stay with people"), or upload your own JSON pack.
- Segregation of duties: select Use the default SoD pairs (12 generic pairs, such as create a vendor and pay it, or enter and approve the same invoice), or upload your own.
- Mitigating controls: add the controls a reviewer may cite (id, name, owner role, Agent-eligible Yes or No), then save. It can stay empty.
- System catalog: select Use the catalog built from Task Cards (the systems the Task Cards name, with their scopes written
system/action:object). Add systems and scopes by hand if needed, then Save this catalog. - Who holds which access: select Choose a CSV file or paste the access export (a person column, a system column and an entitlement or scope column), then Preview. The preview lists the matched people, the people not found in this company and the access that maps to no catalog scope; those rows are not loaded. Select Load this export.
- Approval chain: for each step (Manager, Role owner, Internal Controls, IAM) choose a person from the company, or Requester's manager for the manager step. Select Save the approval chain.
When all 6 are loaded, the screen says "Governance is on for this company."
What you do: request access for an agent
- In Opportunities › Proposed agents, select Open draft (or Open template). The Agents builder opens (
#agents/build/<key>). - Read Before it can run: the readiness checks and the gaps. A gap does not block the draft.
- Fill what you can, then select Save draft. A draft gives no access.
- Read Governed access, under Before it can run. On your own company, only the Task Card's owner can start the request, from their own DutyGraph sign-in: they select Start the access request. Everyone else reads "Only <owner> can request access for an agent that acts for them." On the Wesco sample, select Start the access request as Aisha Bello (sample persona).
- The request opens in Agents › Requests (
#gov/requests/<id>). Answer the 1 question. Read the proposal: each line is inherited, escalated or removed, with its rule. Select Submit to the approval chain. - Each approver in the chain decides in Agents › Review queue and selects Record the decision. On your own company each approver does this from their own sign-in. On the Wesco sample you switch the persona with Acting as.
- On the issue screen, record the issuance with Record the issuance. The gateway token shows once.
- In Agents › Issued agents, select Try an action: an allowed call passes, a call outside the rules is blocked.
- In Agents › Audit, open the Register, the Ledger (Verify chain) and the Auditor workspace.
The Agents tabs are Workspace, Saved agents, Requests, Review queue, Issued agents, Rules, Audit and Business review. See Agents.
What happens behind the scenes
- The builder fills each field from the Repo, by code, with a chip that names its source file. You can make a marker or a policy tighter. You cannot make it looser.
- The export writes files for the client's own AI tool, with
GAPS.mdfor what is missing. DutyGraph does not run the agent. - Each pack load is a new version of that pack. It is sealed on the hash-linked ledger in the same step. Each load also gives each person a PER- id and each Task Card with an AI mode a TSK- id. An id never changes once given.
- DutyGraph reads the access export as of the day it was exported. It does not connect to the company's identity or access system.
- Governance: code compares the agent's scopes to the owner's access and to the rule packs. The approval chain records each decision. Each record goes into the ledger. The gateway checks each call that goes through it.
- On the Wesco sample, Okta, Entra, Saviynt, ServiceNow and Oracle are simulated. The approvers are sample personas that you operate. Each decision says "operated by" you.
On your phone
Set up works on a phone; the packs are a list with 1 open at a time. A long access export is easier to load on a computer. The builder puts the agent first, with Before it can run and Governed access above the fields. Save draft and Download .zip sit at the bottom. The governance queues, issued agents, register and ledger are cards. The request channel switches between Conversation and Proposal. When governance is set up, the Overview has an Agent requests quick action.
Where it stands today. Works for any company after Set up governance. The Wesco sample is ready to run with illustrative packs. On your own company the owner starts the request and the approvers decide from their own sign-ins; there are no personas outside the samples. DutyGraph reads the access export you upload; it does not connect to Okta, Entra, Saviynt or any other identity system, and it does not provision the agent. Single sign-on for reviewers is Planned. The manifest builder and its exports work for every company, with or without governance.
Step 9. Show the person their agent plan
What you do
- Open the saved agent in the Agents builder. Under Before it can run, find Share the plan with <person>. Save the draft first: the plan is built from the saved version.
- Select Create a private link for <first name>. The link is shown once. Select Copy link, Share (the phone's share sheet) or Preview. When the company's email (Resend) is set up, Send by email sends it for you.
- Wait for the answer. The Inbox shows "<person>: the agent plan looks right" or "<person>: something's off in the agent plan". Select Read the answer. It opens the agent.
- Read the answer in the list of shared plans under the panel. Select Mark reviewed. To stop a link, select Revoke link.
- If something is off, correct the Task Card or the agent, save a new draft and share the new version.
What the person sees on the private page (/plan/<token>), labelled "Proposed plan · not deployed":
- What we found: their Task Cards, how often, the time today and the agent's part.
- The plan: what the agent does, where it stops for them, what it never does and where it would run.
- Your process today and with the agent: each step today and with the agent.
- How you would operate it: how it starts, how approvals reach them, how to stop it and who to ask.
- What happens next: the governed access status, read only. "You cannot approve or change anything on this page."
At the end the person selects This looks right or Something's off, can choose what is off and add a short note, and selects Send to <advisor>.
What happens behind the scenes
- Code builds the plan from the saved agent, its Task Cards and the Opportunities hours when you create the link. No AI call. The plan is kept exactly as shared; a later edit of the agent does not change it.
- The link works for 30 days and opens only this plan. DutyGraph stores only a hash of it.
- The answer is stored as understood: the verdict, the parts flagged and the note the person confirmed. Code removes contact details, links and anything like a password from the note before the person sends it.
- The answer makes an Inbox Review item and an advisor notification ("agent plan answered"), by email and on your phone when those are set up.
- DutyGraph does not run agents. The page says so.
On your phone
The panel and the plan page work on a phone. The person's page is built for a phone first.
Where it stands today. Works, by private link only. The person cannot yet open the plan from their own DutyGraph sign-in. The time with the agent shows only where it is predicted (the samples); a real company's plan leaves it out. Do not describe an agent as built or deployed for a person. Say "proposed" or "planned".
Try it on a sample
Wesco sample (governed agents)
Open /app?sample=wesco while signed in. The first visit creates the Wesco sample and opens its Overview. All people, access and approvals are illustrative. Public facts link to their sources.
- Overview, Discovery, Repo and Work Map: the path from research to 17 Task Cards, already done.
- Opportunities › Your team: hours a week, marked Reported · sample. Switch to With agents.
- Opportunities › Proposed agents: select the ship-and-debit claim agent for Aisha Bello, then Open draft.
- In the builder, Governed access › Start the access request as Aisha Bello (sample persona). Then follow step 8 above.
To start the sample again, register a new advisor account, or ask an operator to reset it.
Cobalt sample (the discovery path, no governance)
On Home, select Open the sample, or open Settings › Workspace › Explore a fictional company › Open my sample company. Cobalt Industrial Supply is fictional. It shows the path from research to Task Cards, Opportunities and the manifest builder. It sends no messages and makes no AI calls. Its governance tabs say governance is not set up, and Set up governance does not change a sample: use it on your own company. See Explore the Cobalt guided example.
When something does not work
| What you see | Why | What to do |
|---|---|---|
| "Research ran but found no facts" | The sources had nothing for this website | Check the website address and run research again. Or add facts in Discovery |
| "Simulated (not real data)" | No research source is set up | Add a research source (Before you start) |
| Answers are not polished, or the Repo waits on To review | The company has no approved AI | Settings › Connections › Approve firm key for this company |
| "The AI response did not finish" | The AI provider stopped early | Try again. Your records did not change |
| No email went out | Resend is not set up | Use Create a private link, or set up Resend |
| "No hours captured yet" | Nobody gave hours yet | Select Open the asks and ask the person who does the work |
| No proposed agent | No owner or no proposed AI mode | Accept the proposals in Repo › To review, or read Not proposed, then Draft the ask or set the mode |
| "Governance is not set up for this company yet" | The company's 6 packs are not all loaded | Agents › Rules › Set up governance (step 8), or use the Wesco sample |
| "Only <owner> can request access for an agent that acts for them." | On your own company only the Task Card's owner starts the request | Ask the owner to sign in and select Start the access request |
| No phone notification | The server has no push keys, notifications are off on this device, or the iPhone app is not on the Home Screen | Settings › Workspace › Phone notifications says which |