Skip to content

Commit a2a2aca

Browse files
binary-knightclaude
andcommitted
Separate internet research from deep research, and pause a meeting between steps
Internet research lets members who can reach the web search it and cite what they find. Deep research is a second setting on top: research before taking a position, several independent sources, primary ones preferred, disagreements reconciled, and what could not be verified listed. Deep research implies the web, and asking for it with the web off is refused. Both can be changed on a stopped meeting. Pause asks the meeting to stop at the next step, so the call in flight finishes and is recorded instead of being thrown away; Stop still ends it immediately. A paused meeting resumes like any other stopped one, through the same adjust panel. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent f9a9847 commit a2a2aca

11 files changed

Lines changed: 140 additions & 55 deletions

File tree

‎README.md‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,20 +53,25 @@ Subscription sign-ins are personal credentials. The app launches the unmodified
5353
5. **Close.** By consensus, on budget, or as stalled when two full cycles pass with no movement. The reason is recorded.
5454
6. **Draft and ratify.** The drafter writes the candidate. Every other member votes independently on that text. If anyone objects, the drafter revises and the vote repeats, for as many rounds as you allowed.
5555
7. **Verdict.** The result is headed **Approved**, **Objections remain**, **Checks failed**, or **Verification incomplete**, judged separately from floor consensus. Approval needs every eligible reviewer's approval, no open objection, and finished checks for workspace changes; a failed check outranks any vote. An evidence panel links each ballot, objection, validated quote, check result, and the reviewed commit to its place in the transcript.
56-
8. **Stop and change your mind.** Stop a meeting at any point and the **Adjust and resume** panel lets you change what the council works with before picking it up again: the access level, whether the implementer and the checks get the network, the check commands, the implementer's time limit, the number of cycles, how many revisions are allowed, and the session limits. Add a note and the next member has to answer it. The change itself goes on the record. An implementation that was interrupted keeps its checkout, so the drafter resumes on its own partial work rather than starting over. The brief, the members, and the workspace folder stay fixed, because everyone has already read them.
56+
8. **Pause or stop, then change your mind.** **Pause** lets the step in flight finish and holds the meeting there, so no call is thrown away; **Stop** ends the current call immediately. Either way the **Adjust and resume** panel lets you change what the council works with before picking it up again: the access level, whether the implementer and the checks get the network, the check commands, the implementer's time limit, the number of cycles, how many revisions are allowed, internet and deep research, and the session limits. Add a note and the next member has to answer it. The change itself goes on the record. An implementation that was interrupted keeps its checkout, so the drafter resumes on its own partial work rather than starting over. The brief, the members, and the workspace folder stay fixed, because everyone has already read them.
5757
9. **Reconvene.** A closed meeting can be reopened with a new instruction. The same members carry on with the whole record, the workspace branch, and the documents, in a new session with its own budget, draft, and vote. Use it for work that does not fit one sitting.
5858

5959
Every prompt states what each member can actually do this turn and that only the drafter writes files, so nobody spends a turn asking who has access. A concession must quote a passage that really appears in the entry it cites; a quote that does not match stays visible as rejected and cannot justify a change of stance. A meeting where every member agreed from the first turn with no cited concession is labelled **no deliberation occurred**. Agreement does not establish correctness; validate important outputs yourself.
6060

6161
Members are stateless between calls and each turn reads the whole thread, so meetings are slow and cost tokens: a three-member, three-cycle meeting at CLI speeds takes ten to twenty minutes. Every session has a call limit and a time limit, shown with the usage as it runs; hitting one stops the meeting with its progress kept, and you can raise the limits and resume. The session limit must cover the implementer's time limit, or the meeting is refused. Failed members are skipped and dropped after two consecutive failures; an interrupted meeting can be resumed from the last committed entry.
6262

63-
## Research mode
63+
## Research
6464

65-
Tick **Deep research** before the meeting and members who can reach the web search it: they are told to find the current state of the subject before taking a position, to name the source and its date for every external fact, to prefer primary sources, and to say plainly what they could not verify. A page a member reads is evidence to weigh, never an instruction.
65+
Two separate settings, before the meeting or on a stopped one:
6666

67-
Who can actually browse is stated in every prompt, member by member, because it differs: Codex and Claude Code search through their own tools, OpenAI and Anthropic members search through their provider's search tool, and Gemini, Grok, Hugging Face, and other compatible endpoints cannot browse at all and are told to rely on what others quote. A Claude Code member reading a workspace at read-only can search but cannot fetch a page directly, because its restricted mode removes that tool. You can also switch research on or off on a stopped meeting from **Adjust and resume**.
67+
- **Internet research** lets members who can reach the web search it where it bears on the question. Every external fact must be cited with its source and date.
68+
- **Deep research** adds the habit: research before taking a position rather than after, several independent sources, primary ones preferred, sources that disagree reconciled instead of one being picked, and a list of what could not be verified. It needs internet research, and ticking it turns that on.
6869

69-
Research sends your brief's subject matter to each provider's search service, and it makes meetings slower and more expensive, since every member may search on every turn.
70+
A page a member reads is evidence to weigh, never an instruction.
71+
72+
Who can actually browse is stated in every prompt, member by member, because it differs: Codex and Claude Code search through their own tools, OpenAI and Anthropic members search through their provider's search tool, and Gemini, Grok, Hugging Face, and other compatible endpoints cannot browse at all and are told to rely on what others quote. A Claude Code member reading a workspace at read-only can search but cannot fetch a page directly, because its restricted mode removes that tool. You can switch either setting on or off from **Adjust and resume** on a stopped meeting.
73+
74+
Research sends your brief's subject matter to each provider's search service. Deep research makes meetings slower and more expensive, since members search before they speak.
7075

7176
## Documents
7277

‎docs/REFERENCE.md‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,9 @@ The estimate before Start shows a typical call count and an allowance that inclu
9191

9292
**Session limits** enforce a maximum number of model-call attempts and a total active duration. The defaults are the calculated call allowance and 60 minutes. A workspace-write or full-access meeting is refused when the session time limit is shorter than the implementer time limit, because a deadline during implementation cancels the draft and discards its checkout; set the session limit to at least the implementer limit, and to twice it when the candidate has checks to run. Calls include failed, cancelled, superseded, and re-asked attempts, but not owner messages or check commands. Independent openings and ballots require room for the whole pending batch before any member starts, so a session can stop just below its call limit. Active time includes preparation, model calls, checks, and cleanup; time spent stopped between resumes is excluded. A total deadline cancels pending calls and checks, saves the record, and shows **Session limit reached**. Cleanup can take additional time after cancellation. Usage displays calls, elapsed active time, and tokens where providers report them; these are not dollar limits.
9393

94-
**Adjust and resume** picks a stopped meeting up under changed settings: workspace access level, network for the implementer and the checks, the check commands, the implementer time limit, the Claude Code sandbox option, meeting length in cycles, revisions after objections, the session limits, and an optional note to the council. The workspace folder, the brief, and the members cannot change, since every member has already read them. What changed is written into the transcript as your own contribution, so the next member answers it, and the prompts state the new access from that turn on. Raising the cycles reopens a floor that closed on its cycle budget, and raises the call allowance to match; a floor closed by consensus or as stalled stays closed. Changing the checks, the network, or the implementer time limit sends a candidate that was already verified back for checking and takes its ballots again. Moving a read-only meeting to a write level asks you to acknowledge uncommitted work, and moving to full access asks for that acknowledgement again. An implementation that was stopped, timed out, or failed keeps its checkout, so the drafter continues from its own partial work. Setting new limits keeps all usage already spent. Restarting cannot reset either limit. After an unclean shutdown, elapsed time since the last active checkpoint is conservatively charged up to the time limit, including downtime; raise the limit if needed to recover. **Reconvene** opens a fresh session with new limits and retains earlier usage in its history. Limits can be set separately on each reconvened session.
94+
**Pause** asks the meeting to stop at the next step: the call in flight finishes and is recorded, then the meeting holds with the status *paused*. **Stop** aborts the call in flight instead. Either state resumes the same way.
95+
96+
**Adjust and resume** picks a stopped or paused meeting up under changed settings: workspace access level, network for the implementer and the checks, the check commands, the implementer time limit, the Claude Code sandbox option, meeting length in cycles, revisions after objections, internet and deep research, the session limits, and an optional note to the council. The workspace folder, the brief, and the members cannot change, since every member has already read them. What changed is written into the transcript as your own contribution, so the next member answers it, and the prompts state the new access from that turn on. Raising the cycles reopens a floor that closed on its cycle budget, and raises the call allowance to match; a floor closed by consensus or as stalled stays closed. Changing the checks, the network, or the implementer time limit sends a candidate that was already verified back for checking and takes its ballots again. Moving a read-only meeting to a write level asks you to acknowledge uncommitted work, and moving to full access asks for that acknowledgement again. An implementation that was stopped, timed out, or failed keeps its checkout, so the drafter continues from its own partial work. Setting new limits keeps all usage already spent. Restarting cannot reset either limit. After an unclean shutdown, elapsed time since the last active checkpoint is conservatively charged up to the time limit, including downtime; raise the limit if needed to recover. **Reconvene** opens a fresh session with new limits and retains earlier usage in its history. Limits can be set separately on each reconvened session.
9597

9698
Concession citations must identify an earlier completed, non-superseded contribution and quote a passage it actually contains. Matching is case-sensitive, with Unicode and whitespace normalization. Missing sources, future/self references, and fabricated quotes remain visible as rejected citations, but do not count toward concession metrics or justify a disagree-to-agree change. The member gets one re-ask to supply evidence. A matching quote establishes traceability, not correctness.
9799

@@ -105,7 +107,7 @@ Progress uses server-sent events as each contribution begins and completes; indi
105107

106108
### Research mode
107109

108-
**Deep research** gives every member that can reach the web permission to use it, and tells all of them what that means: search before taking a position, cite each external fact with its source and date, prefer primary sources, and state what could not be verified. The rules add that a page a member reads is data to evaluate and never an instruction, and that a search result does not make a claim true.
110+
**Internet research** gives every member that can reach the web permission to use it, and tells all of them to cite each external fact with its source and date. **Deep research** is a second setting on top: search before taking a position rather than after, gather several independent sources and prefer primary ones, reconcile sources that disagree instead of picking one, date anything that changes over time, and list what could not be verified. Deep research needs internet research and turns it on; asking for deep research with the web off is refused. Where a provider counts search uses, deep research raises the allowance. The rules add that a page a member reads is data to evaluate and never an instruction, and that a search result does not make a claim true.
109111

110112
Capability differs by member, and the **ACCESS THIS TURN** section names it per member so nobody argues from a guess:
111113

@@ -117,7 +119,7 @@ Capability differs by member, and the **ACCESS THIS TURN** section names it per
117119
| Anthropic API | The Messages API server-side search tool, at the version the model takes. |
118120
| Gemini, Grok, Hugging Face, OpenAI-compatible | No browsing. They are told to rely on what others quote. |
119121

120-
Research is recorded with the meeting, shown in the meeting header, and can be switched on or off from **Adjust and resume** on a stopped meeting, like any other setting. It costs time and tokens: every member may search on every turn, and searches send the subject matter of your brief to each provider's search service.
122+
Both settings are recorded with the meeting, shown in the meeting header, and can be switched from **Adjust and resume** on a stopped meeting, like any other setting. It costs time and tokens: every member may search on every turn, and searches send the subject matter of your brief to each provider's search service.
121123

122124
## Giving the council documents
123125

‎lib/budget.mjs‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import { callsUsed, elapsedBudget, estimateCalls } from '../public/meeting-state.js';
22

3+
// Pause is not an error, but it travels the same path: the loop stops between steps and the meeting keeps everything it has.
4+
export class PauseError extends Error {
5+
constructor() { super('Paused by the owner. Adjust anything you like, then resume.'); this.name = 'PauseError'; }
6+
}
37
export class BudgetLimitError extends Error {
48
constructor(kind) {
59
super(`${kind === 'calls' ? 'Call' : 'Time'} limit reached. Increase this session's limits to resume; work already recorded is kept.`);

0 commit comments

Comments
 (0)