Concepts
When Dus needs you
How Dus keeps work moving when it needs you, a limit is near, the computer is busy or a Duscode rule blocks a step, and how it learns from its own weeks.
Dus is built so you are never stuck waiting on it, and it is never stuck waiting on you without saying why. These are the habits behind that. They are built into Duscode and checked by its tests.
Every stop says the way forward
When Dus stops or waits, it says plainly what is blocking and recommends the next step as a one-tap choice. The recommendation follows how the task is going:
- A budget. A task that is going well is offered more before it runs out, with an estimate of what is left. See Budgets.
- Going round in circles. If the task got real work done before it started repeating itself, Dus recommends Keep going, differently. If the same error keeps coming back and nothing is done yet, it recommends a stronger model. Otherwise it recommends stopping, to save the money.
- Out of Duscode credits. A task that is going well carries on, on your own key if you have one, otherwise with a top-up. One that isn't recommends stopping.
- Waiting on a running job (tests, a build, CI) is not being stuck. Dus waits for it and says what it is waiting for.
- The queue says why it paused and what to do: answer the card above, Resume, or Continue.
If a card waits more than 10 minutes, Duscode reminds you once on your notification channels (desktop, Slack or Teams, set up in Settings → Integrations), with the question and what Dus recommends. Quiet hours still apply.
Email reminders (optional). If you are signed in to Duscode Cloud and have turned on “needs you” reminders (Email preferences in your account), the same one reminder also comes by email, once per card. It names the project, the session and the card's question in plain words, and has one button that opens that card on the computer running Duscode. The button works there while Duscode is running. The email never carries code, command output, prompts or keys: a question that looks like code is replaced by a short generic line. Every reminder email has an unsubscribe link for this type. Quiet hours hold it back too. Sending it to a different address (such as a work address) is not built yet.
After a restart or an update
If Duscode restarts or is updated while Dus works, the task's card says which: "Duscode was updated at 02:38", "was restarted", or, only after a real crash, "stopped unexpectedly". Continue finishes the task and then runs your queue by itself. You don't need to press Resume as well.
When the computer is busy
When your computer is very busy, the working line says what is using it, by folder: "Most of it: ~/projects/shop (node, 6 processes, 3.1 cores)". It marks what Dus started. Close what you don't need. Dus never stops a process it didn't start.
When a Duscode rule blocks a step
Sometimes a Duscode safety rule blocks a step, such as the sandbox keeping a session to its own folder. Dus doesn't work around it with something riskier, like copying the whole repository inside your project. Duscode refuses that copy anyway. Dus tells you it is a Duscode limitation, gives you the safe path (often a new session), and notes the problem in your Duscode feedback list. If you've turned on Send problems to Duscode, it can reach the people who build Duscode from there.
Docs follow code
When a task changes code, Dus checks the docs your project already keeps: the README, roadmap, decisions, changelog, architecture and API docs. A doc that mentions what changed, or your project's rules saying docs follow code, gets a look before the task ends. Dus ticks the roadmap item, adds a decision with your project's numbering, adds a changelog line, and lists the docs it updated in the task's Proof of Work. It never creates docs your project doesn't keep.
What Dus learns, you approve
Duscode ships with its own lessons from real sessions, such as "never leave the owner stuck" and "don't sleep to wait". Dus reads only the ones that fit the moment. Each lesson is checked by a test.
When Dus proposes a new lesson for your project, for example from a review of its own work, it asks first: Learn this: "…"? with Keep, Edit (type your own wording) and Don't. Nothing is saved without your OK. Things you tell Dus yourself, like "from now on, use pnpm", are already yours, so it saves those as you said them.
The weekly self-review
Once a week, Duscode reads its own sessions on this computer and puts a short report in the notification list. It looks for long waits on you, the same approval asked again and again, "stuck" alarms on tasks that were fine, budget stops on tasks that were going well, fallback models that never switched back, and long sleeps. Each finding comes with what would help.
- It makes no model call and costs nothing.
- Nothing leaves your computer, unless Send problems to Duscode is on. Then a summary with only kinds and counts (no projects, files, commands or text) joins your feedback list, where you see exactly what would be sent.
- Turn it off in Settings → Notifications → Weekly self-review.