@@ -58,8 +58,8 @@ A categorized catalog of what's shipped. Cross-linked to `TEST-PLAN.md` checks.
5858 never has to carry a per-author sentence, and a channel with no Composio gets no line at all.
5959 → TEST-PLAN: Composio identity and connection discovery.
6060
61- - ** Focused conversation settings:** Access presents Read-only, Worker, and Autonomous as the
62- primary modes, with Full access and Lean as clearly separated special-mode boxes ; Custom is no
61+ - ** Focused conversation settings:** Access presents Read-only, Worker, and Admin as the
62+ base modes, with Auto and Lean as independent options ; Custom is no
6363 longer offered. MCP Connections, Cloud MCP, Environment tokens, and Skills are separate first-class
6464 channel pages rather than nested beneath Tools; enabled skills sort first and the channel-level
6565 Grant Tier switch is gone.
@@ -79,7 +79,7 @@ A categorized catalog of what's shipped. Cross-linked to `TEST-PLAN.md` checks.
7979 status. Secrets can be edited in every channel mode, including through ` /secrets ` ; file-edit
8080 permissions and the separate ` /model ` command policy are unchanged.
8181 ** Access** is a fifth tab, visible only to current admins/channel managers. They can edit the
82- base mode, Full access, Lean, network, use/manage policy and named guest/manager lists. Selecting
82+ base mode (including Admin/full access), Auto , Lean, network, use/manage policy and named guest/manager lists. Selecting
8383 Full access does not grant anyone an administrator role; bypass still requires an admin author.
8484 Saves acknowledge immediately with a progress view, validate named users against live human
8585 channel membership, re-check management and roles at the write boundary, and audit policy changes.
@@ -1235,7 +1235,7 @@ A categorized catalog of what's shipped. Cross-linked to `TEST-PLAN.md` checks.
12351235 work folder, clean workspace and artifact dir mounted), while memory-off and the MCP allowlist are
12361236 unchanged. Per-conversation gated folder: filesystem sandbox confined to the folder, persistent memory
12371237 off, MCP allowlist. → TEST-PLAN: Security (confinement, allowlist, memory).
1238- - ** 2026-07 full-codebase review remediation** (from ` IMPROVEMENTS.md ` ) : engine children run with a
1238+ - ** 2026-07 full-codebase review remediation** : engine children run with a
12391239 minimal allowlisted env (` src/engines/child-env.js ` — Slack tokens / approval secret never reach
12401240 sandboxed processes; daemon-IPC creds ride a 0600 ` internal-auth.json ` ); MCP tokens off argv
12411241 (0600 temp file written only at spawn); admin UI binds loopback by default with a no-password
@@ -1352,40 +1352,31 @@ A categorized catalog of what's shipped. Cross-linked to `TEST-PLAN.md` checks.
13521352 Customized/restored via the ** ` get_gateway_guide ` ** (anyone) / ** ` update_gateway_guide ` ** /
13531353 ** ` reset_gateway_guide ` ** (admins) gateway MCP tools — per-file or whole-guide restore-to-default.
13541354 → TEST-PLAN: Gateway-usage skill.
1355- - ** Retired 2026-09-03 (Linux + containers only):** the OS-sandbox half of this bullet — the four modes stay as TOOL-permission presets (read =
1356- read-only tools, bash = shell + file writes, auto = prompts auto-approved, admin =
1357- ` --dangerously-skip-permissions ` for an admin author), and none of them changes what the channel's
1358- container can see. Four channel ** modes** (set with ` /mode ` ): ` read ` (Read/Glob/Grep only, every
1359- other tool asks for approval — the shell is named in the lockdown's ` permissions.ask ` , not merely
1360- left out of ` permissions.allow ` : Claude Code answers a simple command whose argv head is on its
1361- own built-in read-only list (` id ` , ` cat ` , ` head ` , ` strings ` , …) BEFORE consulting
1362- ` --permission-prompt-tool ` , so omission alone let a read-mode turn run ` id -un ` with no approval
1363- card; an ` ask ` rule outranks that layer and routes every command — simple or compound — to the
1364- approval card), ` bash ` (Bash + file writes, sandboxed to the folder), ` auto `
1365- (autonomous — permission prompts auto-approve, still fully sandboxed), and ` admin ` (full tools,
1366- sandbox off — requires an ** admin author** as well). ` admin ` is org-admin-only to select; the safe
1367- modes honor the channel's "who can manage" policy. The ** admin-run settings variant** — the file
1368- handed only to an admin author's escalated turn in an admin-mode channel — grants the shell tools
1369- outright and carries no ` ask ` rule at all: that turn spawns with
1370- ` --dangerously-skip-permissions ` , so the rule widens nothing, and inheriting read mode's
1371- ` ask: ["Bash"] ` instead made Claude Code deny a bare ` pwd ` and demote the whole turn to read-only
1372- (the ` full ` profile sets ` adminMode ` alone, never ` allowBash ` ). The SHARED file of the same
1373- channel is unchanged — a non-admin author there still routes every command to the approval card.
1374- → TEST-PLAN: Modes & approvals.
1355+ - ** Three base modes with independent options:** Read-only, Worker, and Admin. Read-only
1356+ routes edits and commands to approval; Worker grants commands and file writes inside the channel
1357+ container. Admin grants Worker to non-admin members and the permission bypass only to trusted
1358+ admin authors. The shared settings file always disables bypass, even when it grants Worker tools.
1359+ ** Auto** and ** Lean** are independent side toggles: Auto approves tool requests for every admitted
1360+ member; Lean removes optional skills and connectors. In Admin mode, Lean applies to non-admins,
1361+ while admins retain their configured tools and context. Changing Worker ↔ Admin preserves both
1362+ toggles. Choosing Read-only clears Auto; enabling Auto on Read-only selects Worker. Existing Full
1363+ access records gain the documented Worker fallback; existing Auto and Lean flags are preserved.
1364+ Network remains a separate setting. → TEST-PLAN: Base modes and independent options.
13751365- Read mode's filesystem contract is engine-neutral: ordinary runs get bounded gateway MCP tools
13761366 to list, read, and literal-search the effective channel workdir. They realpath-check every target,
13771367 refuse traversal and escaping symlinks, cap file/search output, and expose no write or shell
13781368 operation. Claude may keep using its native Read/Glob/Grep; Codex uses these tools when its
13791369 read-only permission profile intentionally withholds command execution. → TEST-PLAN: Engines.
1380- - ** Capability profiles** (admin UI, one dropdown instead of a grid of toggles): ** Read-only** /
1381- ** Worker** / ** Autonomous** / ** Full access** / ** Lean** — each with example help text — expand to
1382- the underlying ` adminMode ` /` allowBash ` /` autoMode ` /` cleanMode ` flags; ** Custom…** unlocks the flags
1383- for hand-editing. Legacy channels derive their profile from existing flags (no DB migration). The
1384- network toggle + the rarely-touched knobs (memory, nudges, refuse-org-tokens, work-dir, engine/
1385- model/effort) live under an ** Advanced** disclosure. → TEST-PLAN: channel access model.
1370+ - The web channel editor, custom DMs, and default templates share the three-mode picker and
1371+ side toggles. The Slack reply's ** Settings** button exposes Read-only/Worker/Admin plus Auto/Lean
1372+ on its manager/admin-only Access tab for channels. DMs retain Runtime mode controls with
1373+ Admin selection restricted to admins. Every click rechecks user
1374+ authorization and channel membership, and every change is audited. ` /mode read|worker|admin ` changes the
1375+ base while preserving applicable options (` bash ` remains a compatibility alias). Legacy run-API
1376+ presets remain accepted with their existing capability-reduction boundary.
13861377- ** Two-axis access model** (per channel, both editable in the admin UI): ** Who can use** (` meta.access ` :
13871378 Approved members / Admins only / Locked) and ** Who can manage** (` meta.manageAccess ` : Org admins only /
1388- Channel members / Custom + ` meta.managers[] ` ). The Slack Access page delegates channel mode, Full access , Lean, network and use/manage policy to
1379+ Channel members / Custom + ` meta.managers[] ` ). The Slack Access page delegates channel mode (including Admin), Auto , Lean, network and use/manage policy to
13891380 current managers. Work-dir stays org-admin-only. The gateway control MCP (` requireManage ` vs
13901381 ` requireAdmin ` ) and in-thread ` /mode ` command retain their narrower admin checks; default ` admins ` means relaxing it is strictly opt-in. Settings →
13911382 ** Reset all channels' access to default** (confirm-gated, audit-logged) restores use/manage to defaults
0 commit comments