Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
249 commits
Select commit Hold shift + click to select a range
c2adf73
Fix automation scheduling: DST-correct 'local' times and off-by-one w…
asklokesh Jul 23, 2026
03c4a16
Reject path-traversal session ids in the conversation store
Saidheerajgollu Jul 23, 2026
8c199ff
Tolerate a corrupt line when loading a conversation .jsonl
Saidheerajgollu Jul 23, 2026
2b588fb
Make the conversation-log shrink rewrite atomic
lifrary Jul 24, 2026
6ff0f0f
gui: add i18n infrastructure with English and Chinese locales
jasmine889966 Jul 25, 2026
03c145c
gui: decode percent-encoded non-ASCII artifact paths
jasmine889966 Jul 25, 2026
671b321
gui: complete Chinese translations and enforce locale contracts
jasmine889966 Jul 25, 2026
e241019
Create the sidecar resource dir in build.rs so a fresh clone builds
Amagah Jul 25, 2026
0d9df38
test: fix flaky test_scheduler_runs_due_task_and_advances near minute…
CyberDefenseOperations Jul 26, 2026
6fb3b67
test: fix flaky ui-refresh e2e by quiescing the auto-title call befor…
CyberDefenseOperations Jul 26, 2026
330e121
Fix attachment de-dup stripping real digits from the filename
Osamaali313 Jul 26, 2026
668f46e
test: fix flaky test_background_task_runs_and_exits near the exit tick
CyberDefenseOperations Jul 26, 2026
d9fbb07
Recover truncated tool calls, and never pass a leaked one off as an a…
hacksics Jul 26, 2026
b0aeff6
test: tighten the output drain (address PR review perf feedback)
CyberDefenseOperations Jul 27, 2026
ee94da2
security: create secret files private, never chmod them after (#143)
Mr-Neutr0n Jul 28, 2026
bfbbeee
fix: detect Ollama vision models from naming conventions (fixes #337)
manavshrivastavagit Jul 30, 2026
8a04124
deps: raise mcp floor to >=1.28.1 (PYSEC-2026-3481/3482/3483)
CyberDefenseOperations Jul 31, 2026
11f3efa
fix(gui): guard session WS onmessage JSON.parse against malformed frames
Jul 31, 2026
de311a0
fix: claim the scheduler overlap guard at dispatch, not inside the sp…
Saidheerajgollu Jul 31, 2026
746db87
Parse inbox reply intent from the leading word, not substrings
Saidheerajgollu Jul 23, 2026
eef2860
fix: gate github_clone and github_pull behind approval
rkfshakti Aug 10, 2026
3d13c7d
coworker picker: setup chips above composer, folder pick at send (UX-…
rohitprasad15 Aug 11, 2026
4908c84
coworker picker: 'Use temporary folder' copy; retire Chat persona
rohitprasad15 Aug 11, 2026
5ea697d
personas: wire manifest skills + mcp into sessions (OPE-58)
rohitprasad15 Aug 11, 2026
b5b000e
personas: ship security coworker bundles (OPE-61 phase C)
rohitprasad15 Aug 11, 2026
d976e82
Phase 0: golden decision table for the permission engine
devikaverma Aug 11, 2026
a442e0e
PR1: split egress out of READ, stop override downgrades, scope patch …
devikaverma Aug 11, 2026
48a498d
PR2: protect the permission system's own settings; never auto-approve
devikaverma Aug 11, 2026
ab00fe3
PR3: split compound commands and check each part independently
devikaverma Aug 11, 2026
a4c5f24
PR4: validate approval answers server-side; audit autonomy changes
devikaverma Aug 11, 2026
110a8ae
personas: sharing v1 — export/import bundles, version + consent (OPE-7)
rohitprasad15 Aug 11, 2026
06a4365
approvals: session read-only command grant; enable on consent card
rohitprasad15 Aug 11, 2026
186d29a
Step 1: known world frozen at session start; ingestion facts to audit…
devikaverma Aug 12, 2026
c958d6f
Step 2: Auto-Approve mode - the reviewer, the hook, and the renames
devikaverma Aug 12, 2026
57002fa
Finish the Mode.AUTO -> Mode.BYPASS_APPROVALS rename in tests
devikaverma Aug 12, 2026
17cd6b2
Mode picker: caution icon on Bypass approvals; note line machinery
devikaverma Aug 12, 2026
dd2090b
Mode picker: drop the note machinery - Auto-Approve copy is two lines…
devikaverma Aug 12, 2026
42a1fa1
Feature 1: shadow evaluation - the reviewer records, the human still …
devikaverma Aug 13, 2026
71c786a
Feature 2: settings pass - flag exposure, gated picker entry, toggles
devikaverma Aug 13, 2026
29c9f2b
Feature 3: reviewer deny card + one-shot "Allow anyway" (8.4)
devikaverma Aug 13, 2026
c59c5de
Feature 4: reviewer metering - badge, mode-menu summary, durable stats
devikaverma Aug 13, 2026
5aa27e2
Step 3b: web_search -> EGRESS + the 1.9 egress cards
devikaverma Aug 13, 2026
a860f3b
Reviewer eval report 2026-08-13 (gpt-5.6-sol): all ship gates pass
devikaverma Aug 13, 2026
5f3ffe3
packaging: ship builtin persona bundles in the sidecar
rohitprasad15 Aug 13, 2026
49c16af
gui: reload coworkers after health, not only at mount
rohitprasad15 Aug 13, 2026
d010394
feat: support custom Responses endpoints
fanziqingbyte Aug 14, 2026
2cb6e36
feat: register BytePlus and Volcengine Ark providers
fanziqingbyte Aug 14, 2026
3094d37
feat: curate Ark model catalogs
fanziqingbyte Aug 14, 2026
e9c8aec
feat: verify Ark credentials via Responses
fanziqingbyte Aug 14, 2026
e74bbf1
feat: add Ark provider branding
fanziqingbyte Aug 14, 2026
4bfd75a
feat: add Ark provider setup links
fanziqingbyte Aug 14, 2026
68c7914
test: cover Ark provider setup end to end
fanziqingbyte Aug 14, 2026
158b45e
docs: document Ark provider support
fanziqingbyte Aug 14, 2026
557723b
fix: make Responses reasoning summaries configurable
fanziqingbyte Aug 14, 2026
19bbbbd
fix: omit reasoning summaries for BytePlus Ark
fanziqingbyte Aug 14, 2026
62ad9db
tools: give coworkers the user's real toolchain, and stop silent skips
rohitprasad15 Aug 14, 2026
cf0edbf
security bundles: offer a self-contained findings report page
rohitprasad15 Aug 15, 2026
c041ed6
Pin trivy in the managed registry; retire tfsec from cloud-posture
rohitprasad15 Aug 15, 2026
25d3289
Tool-request prompts fail closed on installability
rohitprasad15 Aug 15, 2026
b866157
Managed tools land on the persistent shell's PATH
rohitprasad15 Aug 15, 2026
8e77d61
Tool-request card: separate the product's facts from the coworker's ask
rohitprasad15 Aug 15, 2026
b022e58
Label the coworker's justification on the tool-request card
rohitprasad15 Aug 15, 2026
560fc3c
Tool-request card speaks plainly; declining re-checks for a user-inst…
rohitprasad15 Aug 15, 2026
5f2eeca
Diagnose truncated tool calls instead of executing their mangled args
rohitprasad15 Aug 15, 2026
4ed112b
Connectors become a per-coworker allowlist (OPE-93)
rohitprasad15 Aug 15, 2026
78fc2bd
Artifact viewer: airtight sandbox for agent HTML + Open in browser (O…
rohitprasad15 Aug 15, 2026
0a18d72
Access drawer and inbound gate honor the persona connector grant
rohitprasad15 Aug 15, 2026
a591f5b
Request cards join the 760px composer column
rohitprasad15 Aug 15, 2026
44e0e85
OpenAI-compatible path names an output ceiling instead of trusting se…
rohitprasad15 Aug 15, 2026
8e2058d
Artifact chip opens the viewer first-click even when the rail is hidden
rohitprasad15 Aug 15, 2026
48f3021
Agent teams: event store, work items, board verbs, journal (OPE-95)
rohitprasad15 Aug 16, 2026
5c00cdf
Work items carry artifact refs; they ride transition and comment
rohitprasad15 Aug 16, 2026
cbf30b8
Workers may file work items; new items always land in the proposed gate
rohitprasad15 Aug 16, 2026
1d12fe9
Journal splits from the board: case-keyed store, grants ride assignment
rohitprasad15 Aug 16, 2026
054f807
Journal refs are plain pointers — no checksum ceremony for agents
rohitprasad15 Aug 16, 2026
4c1b542
Board UI: rail section, plan gate, expanded overlay, journal cases (O…
rohitprasad15 Aug 16, 2026
2ebc5fd
Progress rail section starts collapsed; auto-opens once when a live t…
rohitprasad15 Aug 16, 2026
d8e4fc7
Rail collapses proposed items to one awaiting-approval line
rohitprasad15 Aug 16, 2026
fc24b66
Drop the proposed state: boards hold only accepted work
rohitprasad15 Aug 16, 2026
3e4fafe
Team wake plumbing: trait-gated verbs, durable queues, staffing gate,…
rohitprasad15 Aug 16, 2026
13f9c0b
SW team: staffing gate UI, expandable team entry, four team personas …
rohitprasad15 Aug 16, 2026
844a651
Dogfood round 1: propose_work_items gate, team-tie survives turn save…
rohitprasad15 Aug 16, 2026
d66dc9b
Pin eval renderer to engine renderer with a parity test
devikaverma Aug 16, 2026
cf436d1
# team chat: own chat store, named workers, mention wakes, cancel int…
rohitprasad15 Aug 16, 2026
d0fdcb0
Chat replaces the session view in place — not a modal; sidebar stays …
rohitprasad15 Aug 16, 2026
2e18d9d
Lead cadence: mandatory check-in timer, harness backstop, sleeping strip
rohitprasad15 Aug 17, 2026
9f6a3d3
Board claims: store-stamped self-assignment + claims policy knob (OPE…
rohitprasad15 Aug 17, 2026
cca8d7c
Board as an open surface: BoardDialect seam, join tokens, /v1/board API
rohitprasad15 Aug 17, 2026
36aa1da
ocw CLI + team-board MCP server on stdio
rohitprasad15 Aug 17, 2026
f10bfca
Workers see the claimable pool (drill-caught)
rohitprasad15 Aug 17, 2026
880c785
Work-item image attachments: content-addressed store + attach on ever…
rohitprasad15 Aug 17, 2026
0dfa596
Deliver ask_user answers to the reviewer's history; steer agents off …
devikaverma Aug 17, 2026
98ea4c4
render_history: label ask_user replies 'reply', not 'turn N'
devikaverma Aug 17, 2026
ed009fd
Reviewer never reads attachment bodies - neutral markers only (4.4)
devikaverma Aug 17, 2026
b5a93fb
human_only asks skip the reviewer - it could clear git-hook writes
devikaverma Aug 17, 2026
20cc749
Grow corpora to 40/25/20; wire multi-turn history into the eval harness
devikaverma Aug 17, 2026
10f0ab1
Track .claude/launch.json (dev server config); ignore local permissio…
devikaverma Aug 17, 2026
d781cb1
Bedrock verify: detect ClientError by response shape, not class name
devikaverma Aug 17, 2026
b2418d5
Drill-round polish: calm rail, digest diet, gate replies, criteria cl…
rohitprasad15 Aug 17, 2026
08c3984
Eval: distinguish error-unsure from cautious-unsure; retry, count, ne…
devikaverma Aug 17, 2026
f589013
Carry cache_read/cache_write through Verdict, stats, and the eval report
devikaverma Aug 17, 2026
a990f68
OPE-101: extract token usage in the OpenAI Responses provider
devikaverma Aug 17, 2026
4cb5837
Merge branch 'feature/ope-101-openai-responses-token-usage' into feat…
devikaverma Aug 17, 2026
b952ed1
Board overlay rework: raw-state list + item detail with event timeline
rohitprasad15 Aug 17, 2026
f26e01c
Address action-demanding transitions to the assignee; neutral verdict…
rohitprasad15 Aug 17, 2026
aafb4f4
Feed model: interest follows the assignment relation; notes are pure …
rohitprasad15 Aug 17, 2026
ce3353d
GUI: right-drawer restructure — Team panel, three primaries + More, b…
rohitprasad15 Aug 18, 2026
097a280
Personas: DevSecOps team — lead + appsec/secrets/posture worker variants
rohitprasad15 Aug 18, 2026
bc862af
Eval reports 2026-08-18: Kimi K3, GLM-5.2, Muse Spark, gpt-5.6-sol - …
devikaverma Aug 18, 2026
7025aa2
Add shell-escape corpus rows
devikaverma Aug 18, 2026
e1dcdcf
OPE-113: fix reviewer prompt shell scoping claim
devikaverma Aug 18, 2026
af768b3
OPE-111: gate mislabeled catalog tools, floor catalog writes against …
devikaverma Aug 18, 2026
80ba13d
OPE-111: browser URL tools are egress, not reads
devikaverma Aug 18, 2026
6cf2b25
Add layered security corpora (gate/reviewer/sequence, 301 rows)
devikaverma Aug 18, 2026
48bfaef
Merge pull request #504 from fanziqingbyte/feat/ark-providers
rohitprasad15 Aug 19, 2026
fc3aa28
matrix: context windows for the Ark Seed models
rohitprasad15 Aug 19, 2026
375d7b2
personas: DevOps team — standing lead + on-demand diagnosis workers
rohitprasad15 Aug 19, 2026
01d6ec6
devops-lead: platform-neutral wording (doctrine in persona, deploymen…
rohitprasad15 Aug 19, 2026
b06a03b
OPE-114: flag files the agent created or downloaded before running them
devikaverma Aug 19, 2026
838eb6a
Show file provenance on the approval card
devikaverma Aug 19, 2026
ab44e07
Add provenance corpus pair and wire it through the harness
devikaverma Aug 19, 2026
3055a9f
Extend provenance to the layered corpus and guard the field-name clash
devikaverma Aug 19, 2026
b24bb81
OPE-115: repoint corpus rows to real tools, add registry and schema g…
devikaverma Aug 19, 2026
8af72d9
OPE-122: enforce granted roots in browser upload and screenshot
devikaverma Aug 19, 2026
5206068
OPE-117: skills and scheduled tasks reach a human, never the reviewer
devikaverma Aug 19, 2026
8e6a43f
OPE-124: check the address a browser navigation actually lands on
devikaverma Aug 19, 2026
cba686a
Gate contact-enrichment lookups as egress
devikaverma Aug 19, 2026
7be4cda
Keep the reviewer corpus to rows the gate actually sends there
devikaverma Aug 19, 2026
9ac59aa
Merge branch 'main' of https://github.com/andrewyng/openworker into f…
devikaverma Aug 20, 2026
b0d2bbd
Surface MCP server startup failures
rohitprasad15 Aug 20, 2026
ead7d9e
Drop accidental node_modules symlink from branch
rohitprasad15 Aug 20, 2026
8e71256
Merge pull request #528 from andrewyng/rp/mcp-failure-surfacing
rohitprasad15 Aug 20, 2026
5ebaa37
Add MCP server flow: Remote URL + JSON tabs, Test connection
rohitprasad15 Aug 20, 2026
0f68852
Drop stray root vitest cache from branch
rohitprasad15 Aug 20, 2026
2414b4a
Retire MCP tab: custom servers live on the Connectors page
rohitprasad15 Aug 20, 2026
db4b31a
Drop local dev launch config from branch
rohitprasad15 Aug 20, 2026
ff78ea9
Chrome cleanup: menu dedup, implicit cloud label, Context optimizatio…
rohitprasad15 Aug 20, 2026
735486a
Merge pull request #530 from andrewyng/rp/mcp-add-test
rohitprasad15 Aug 20, 2026
19e10f0
Shipping lineup: remove Chat, ship Code disabled, gate unshipped pers…
rohitprasad15 Aug 21, 2026
78b0f48
Coworkers pages redesigned: grouped list, one toggle per row, detail …
rohitprasad15 Aug 21, 2026
f29e082
Coworkers list: group spacing, Default pill replaces star/toggle on t…
rohitprasad15 Aug 21, 2026
f25fbd4
Rail: solo sessions get Progress back (empty team object misread as l…
rohitprasad15 Aug 21, 2026
9735d0c
e2e: repair specs broken by the shipping lineup
rohitprasad15 Aug 21, 2026
1299760
Personas: requires_folder/subagents/scheduling traits replace family …
rohitprasad15 Aug 21, 2026
65c568c
Universal scratch: every session gets a scratch root; Artifacts panel…
rohitprasad15 Aug 21, 2026
ebb97d7
Root promotion: request_directory gains primary; granted folder can b…
rohitprasad15 Aug 21, 2026
4406068
Files explorer over session roots (UX-037)
rohitprasad15 Aug 21, 2026
3fc782e
Security personas: report pages go to the scratch directory, not the …
rohitprasad15 Aug 21, 2026
1e564d5
request_tool: non-catalog names never raise the install card
rohitprasad15 Aug 21, 2026
2c9fb74
Toolset dedup: one windowed reader, sleep_until only, browser trim/re…
rohitprasad15 Aug 21, 2026
d88a196
Right drawer: retire the More fold — all sections list flat, collapse…
rohitprasad15 Aug 21, 2026
76e7276
Merge rp/mcp-add-test: custom MCP add/test flow, single Connectors page
rohitprasad15 Aug 21, 2026
4ac1e59
MCP Test: flag authorizing before the background connect; notice copy…
rohitprasad15 Aug 21, 2026
8724549
MCP OAuth: silent refresh actually works across restarts
rohitprasad15 Aug 21, 2026
476032e
MCP Test on a live server actually tests: round-trip + tool refresh, …
rohitprasad15 Aug 21, 2026
b4d1a01
Remove MCP server: also shut down the live connection and purge OAuth…
rohitprasad15 Aug 21, 2026
2af919c
Merge pull request #531 from andrewyng/rp/multiple-efforts
rohitprasad15 Aug 21, 2026
a6a7341
MCP failure notice fires on state change, not every session
rohitprasad15 Aug 21, 2026
4eefc09
Sidebar expand sticks while the artifact viewer is open
rohitprasad15 Aug 21, 2026
fd1eb65
Viewer header: breadcrumb back, labeled action menu, close; Access fo…
rohitprasad15 Aug 21, 2026
3a81c49
build_dmg: document the venv prereqs a fresh worktree needs
rohitprasad15 Aug 21, 2026
e7bd499
Right rail: hidden by default, toggle persists per-device
rohitprasad15 Aug 21, 2026
83ab5bd
Merge pull request #532 from andrewyng/rp/postmerge-fixes
rohitprasad15 Aug 21, 2026
a9c3d88
Design system: bundled Inter + JetBrains Mono, 6-step type scale, bri…
devikaverma Aug 21, 2026
bd202ad
e2e: seedSessionMessages seam + replayed-transcript specs
devikaverma Aug 21, 2026
e4f7e53
Provider: ChatGPT-subscription sign-in (OAuth PKCE, tokens local-only)
devikaverma Aug 21, 2026
91b4ad0
Settings ▸ Models: sign-in pane for the subscription provider
devikaverma Aug 21, 2026
893b06e
Canvas: whisper off-white instead of pure white (owner call)
devikaverma Aug 21, 2026
19561ab
Subscription catalog: add the 5.6 tiers (Sol/Terra/Luna); Sol becomes…
devikaverma Aug 21, 2026
a217511
Responses stream: rebuild the turn when the terminal event's output i…
devikaverma Aug 21, 2026
20cd273
Sidebar: New session becomes a quiet nav row; airier rhythm (UX-040)
devikaverma Aug 21, 2026
6780867
Sidebar: 300px default width (UX-040 owner call)
devikaverma Aug 21, 2026
76189b4
Whisper chrome + soft canvas edge shadow, both themes (UX-040)
devikaverma Aug 21, 2026
6bf6018
MCP failure notice: one quiet line + Details + Open Connectors; stabl…
rohitprasad15 Aug 22, 2026
0305a3e
Subscription provider: titled Codex subscription, wears the vendor mark
devikaverma Aug 22, 2026
805d002
Subscription provider: settle on the ChatGPT subscription title
devikaverma Aug 22, 2026
2733eb8
Legacy MCP notices collapse too: server name recovered from the persi…
rohitprasad15 Aug 22, 2026
e247997
MCP add flow: poll while a probe is in flight; name prefills from the…
rohitprasad15 Aug 22, 2026
59131b0
Topbar/transcript polish: neutral Artifacts count, wider top gutter, …
rohitprasad15 Aug 22, 2026
76e9174
Explain Auto-Approve once per session
devikaverma Aug 22, 2026
81ca80c
Auto-Approve banner spans the transcript column
devikaverma Aug 22, 2026
42da425
Mark every permission-mode change in the transcript
devikaverma Aug 22, 2026
0b5294a
Merge branch 'main' of https://github.com/andrewyng/openworker into f…
devikaverma Aug 22, 2026
5cbd324
OPE-130: scope read-only session grants to the session's folders
devikaverma Aug 22, 2026
42e8538
Cover the provenance line on the approval card
devikaverma Aug 22, 2026
3665640
Carry reviewer cache tokens into the metering badge
devikaverma Aug 22, 2026
88bc5c5
Reviewer follows model switches; retire the dropdown metering line
devikaverma Aug 22, 2026
82aca54
Retire the check-count badge and its polling
devikaverma Aug 22, 2026
f7bd1a1
Auto-Approve picker copy matches the banner
devikaverma Aug 22, 2026
97eca9c
Mode notice waits for the server-confirmed mode; Auto-approve copy pass
devikaverma Aug 22, 2026
141d02a
Merge pull request #533 from andrewyng/internal-branch-aug20
rohitprasad15 Aug 23, 2026
87b4eeb
Merge main into feature/permission-modes
rohitprasad15 Aug 23, 2026
ef96fc5
Golden matrix: the absolute-escape row uses a POSIX-absolute path
rohitprasad15 Aug 23, 2026
5604676
pytest: put the repo root on sys.path
rohitprasad15 Aug 23, 2026
ec0eb9b
Merge pull request #534 from andrewyng/feature/permission-modes
devikaverma Aug 23, 2026
34aa6b8
Project identity: binding > git > path; named memories and boards
rohitprasad15 Aug 23, 2026
7b7c8f7
Composer attach menu: message/session split, project memory & board b…
rohitprasad15 Aug 23, 2026
efb10e0
Triage Lead: interview-first standing watch over incoming channels
rohitprasad15 Aug 23, 2026
f679853
Grant-time presence notice renders as a quiet info line
rohitprasad15 Aug 23, 2026
161e058
Merge pull request #217 from CyberDefenseOperations/contrib/bump-mcp-…
rohitprasad15 Aug 23, 2026
ef9a3d8
Merge pull request #214 from Osamaali313/fix-attachment-dedup-filename
rohitprasad15 Aug 23, 2026
b686a3b
Merge pull request #365 from ChakrawarShubham/fix/ws-onmessage-unguar…
rohitprasad15 Aug 23, 2026
21a301f
Merge pull request #209 from CyberDefenseOperations/contrib/fix-flaky…
rohitprasad15 Aug 23, 2026
d6a17e8
Merge pull request #210 from CyberDefenseOperations/contrib/fix-flaky…
rohitprasad15 Aug 23, 2026
85330f6
Merge pull request #216 from CyberDefenseOperations/contrib/fix-flaky…
rohitprasad15 Aug 23, 2026
02a6b20
Merge pull request #488 from rkfshakti/fix/github-clone-pull-approval…
rohitprasad15 Aug 23, 2026
c75add0
Merge pull request #536 from andrewyng/rp/project-memory
rohitprasad15 Aug 23, 2026
941337d
Merge pull request #291 from Mr-Neutr0n/security/secrets-created-private
rohitprasad15 Aug 24, 2026
47f26dd
Merge pull request #50 from asklokesh/fix/automation-schedule-dst-and…
rohitprasad15 Aug 24, 2026
48f10ff
Merge pull request #138 from Amagah/fix/131-sidecar-resource-dir
rohitprasad15 Aug 24, 2026
c5b377c
Merge pull request #345 from manavshrivastavagit/feature/ollama-visio…
rohitprasad15 Aug 24, 2026
58a3983
Prepare app release 0.2.0: version bump
rohitprasad15 Aug 24, 2026
ed75ab4
Pre-release fixes from the 0.2.0 walkthrough
rohitprasad15 Aug 24, 2026
50c2b04
Restore live-turn state on session reconnect
rohitprasad15 Aug 24, 2026
f1345bd
Auto-approve: 5-deny streak breaker with notice, question-aware revie…
rohitprasad15 Aug 24, 2026
2c843cb
Surface the reviewer pause on the composer mode chip
rohitprasad15 Aug 24, 2026
6d0d60b
Show the reviewer hesitation on unsure-escalated approval cards
rohitprasad15 Aug 24, 2026
40990da
Persist approval provenance and server-authored mode notices
rohitprasad15 Aug 24, 2026
a25274e
Bookkeeping saves keep their place in Recents
rohitprasad15 Aug 24, 2026
5c8a60e
Fix session auto-titling on plan-backed sessions
rohitprasad15 Aug 24, 2026
eae1ed3
Auto-title at turn start, not turn completion
rohitprasad15 Aug 24, 2026
eaba001
First contact asks via ask_user; titles read the first reply
rohitprasad15 Aug 24, 2026
44538a7
Merge pull request #541 from andrewyng/rp/minor-fixes
rohitprasad15 Aug 24, 2026
6fbd0f9
Add Ox Alpha (stealth preview) via OpenRouter
rohitprasad15 Aug 25, 2026
26a51c9
Prepare app release 0.2.1: version bump
rohitprasad15 Aug 25, 2026
7fc3ee6
Merge pull request #544 from andrewyng/rp/ox-alpha
rohitprasad15 Aug 25, 2026
1789a0f
fix: repair tool-call/result pairing on load to prevent unrecoverable…
rkfshakti Jul 30, 2026
47e82e9
chore: trigger CI re-run
rkfshakti Jul 31, 2026
9bad0fd
fix: don't inject placeholder for trailing pending tool calls
rkfshakti Jul 31, 2026
5c799b0
docs: security-first README (use cases + governed-by-design) and SECU…
rohitprasad15 Aug 26, 2026
810edb3
docs: switch to all-languages trendshift badge, centered
rohitprasad15 Aug 26, 2026
ca52cf7
docs: center README header lockup (title, links, badge)
rohitprasad15 Aug 26, 2026
86c57f0
Merge pull request #569 from andrewyng/rp/readme-security
rohitprasad15 Aug 26, 2026
e826b48
fix(teams): enforce worker item visibility
rakeshutekar Aug 28, 2026
0939fd6
fix(teams): authorize attachment reads
rakeshutekar Aug 28, 2026
5392e7a
Merge main into feat/gui-i18n
rohitprasad15 Aug 28, 2026
086be2a
gui: re-apply and extend i18n wrapping onto current main
rohitprasad15 Aug 28, 2026
5f2a554
Merge pull request #585 from rakeshutekar/fix/worker-board-item-auth
rohitprasad15 Aug 29, 2026
03e4a53
Merge pull request #586 from rakeshutekar/fix/attachment-read-auth
rohitprasad15 Aug 29, 2026
709a9ba
gui: fix plural forms and notice strings caught by CI e2e
rohitprasad15 Aug 29, 2026
c104854
Merge pull request #127 from jasmine889966/feat/gui-i18n
rohitprasad15 Aug 29, 2026
d20dd62
Merge pull request #379 from Saidheerajgollu/fix/scheduler-stale-tick…
rohitprasad15 Aug 29, 2026
6dfd1a4
Merge pull request #24 from Saidheerajgollu/fix-inbox-reply-substring…
rohitprasad15 Aug 29, 2026
e8824ab
Merge pull request #55 from Saidheerajgollu/harden-session-id-path-tr…
rohitprasad15 Aug 29, 2026
5c8f6dd
Merge pull request #219 from hacksics/unparsed-tool-calls-upstream
rohitprasad15 Aug 29, 2026
ccc845d
Merge pull request #56 from Saidheerajgollu/tolerate-corrupt-jsonl-on…
rohitprasad15 Aug 29, 2026
fbf5714
Merge pull request #70 from lifrary/fix/atomic-conversation-shrink
rohitprasad15 Aug 30, 2026
9e145d9
Merge pull request #350 from rkfshakti/fix/repair-tool-pairing-on-loa…
rohitprasad15 Aug 30, 2026
684bcf8
Update SECURITY.md
sithu209 Aug 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
17 changes: 17 additions & 0 deletions .claude/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"version": "0.0.1",
"configurations": [
{
"name": "gui",
"runtimeExecutable": "npm",
"runtimeArgs": ["run", "dev", "--prefix", "surfaces/gui"],
"port": 1420
},
{
"name": "server",
"runtimeExecutable": ".venv/Scripts/python.exe",
"runtimeArgs": ["-m", "coworker.server.run", "--cwd", "."],
"port": 8765
}
]
}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ dist/

# Local secrets (live-smoke BYO keys) — never committed
.env
.claude/settings.local.json
36 changes: 29 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# OpenWorker
<h1 align="center">OpenWorker</h1>

**[openworker.com](https://openworker.com)** · [Download](#download) · [Issues](https://github.com/andrewyng/openworker/issues)
<p align="center"><strong><a href="https://openworker.com">openworker.com</a></strong> · <a href="#download">Download</a> · <a href="https://github.com/andrewyng/openworker/issues">Issues</a></p>

<a href="https://trendshift.io/repositories/91434?utm_source=trendshift-badge&amp;utm_medium=badge&amp;utm_campaign=badge-trendshift-91434" target="_blank" rel="noopener noreferrer"><img src="https://trendshift.io/api/badge/trendshift/repositories/91434/daily?language=Python" alt="andrewyng%2Fopenworker | Trendshift" width="250" height="55"/></a>
<p align="center"><a href="https://trendshift.io/repositories/91434?utm_source=trendshift-badge&amp;utm_medium=badge&amp;utm_campaign=badge-trendshift-91434" target="_blank" rel="noopener noreferrer"><img src="https://trendshift.io/api/badge/trendshift/repositories/91434/daily" alt="andrewyng%2Fopenworker | Trendshift" width="250" height="55"/></a></p>

> **Beta** - OpenWorker is in open beta: fully usable, updates itself, and we're actively polishing rough edges. [Issues](https://github.com/andrewyng/openworker/issues) welcome.

**AI that gets your everyday tasks done.** OpenWorker is an open-source AI coworker that lives on your desktop and delivers **finished work**, not just chat: a polished document, a Slack reply with the numbers, an updated calendar, a triaged inbox.
**AI that gets your everyday tasks done.** OpenWorker is an open-source AI coworker that lives on your desktop and delivers **finished work**, not just chat: your code reviewed for vulnerabilities with fixes ready to go, a polished document, a Slack reply with the numbers, a triaged inbox. It ships **specialist Security coworkers** first — attackers already use AI, and defenders deserve the same leverage, governed.

It runs on your machine and doesn't lock you into any model: bring your own API key for OpenAI, Anthropic, Google, or an open-weight provider, or run fully local with Ollama. Your data leaves your machine only through the model and integrations *you* choose.
It runs on your machine and doesn't lock you into any model: bring your own API key for OpenAI, Anthropic, Google, or an open-weight provider, or run fully local with Ollama. Your data leaves your machine only through the model and integrations *you* choose. Every action an agent takes is governed and logged — see [Governed by design](#governed-by-design).

[![How OpenWorker works](docs/assets/how-it-works.png)](https://openworker.com)

Expand All @@ -22,6 +22,18 @@ It runs on your machine and doesn't lock you into any model: bring your own API

Open the app, add a model key (or point it at Ollama), and ask for something real.

## Use cases

Pick a coworker, point it at real work, get a finished deliverable:

- **Security review** - scan a codebase and its dependencies for real risk. Findings come from deterministic scanners (like semgrep) plus model reasoning; proposed fixes are re-scanned and diff-reviewed before you approve them - the fixer is never the only checker.
- **Cloud posture** - audit cloud configuration against common misconfiguration classes and draft the remediation plan.
- **Incident triage** - work a security or ops incident: gather context across your tools, draft the timeline, prepare the report.
- **Everyday work** - prep a customer call from your CRM and inbox, turn scattered notes into a shippable plan, produce documents and spreadsheets, keep your calendar and Slack threads handled.
- **Standing automations** - a morning brief, a weekly report, a watch over a channel - on a schedule, with full transcripts.

Specialist coworkers arrive with the tools, working style, and check-ins for one job already set up. Security coworkers ship first.

## How it works

1. Tell OpenWorker the outcome you want - "prepare a customer brief," "untangle my calendar," "draft a report," "check where the release stands across Jira and GitHub."
Expand All @@ -42,19 +54,29 @@ Under the hood:
└───────────────┴────────────────┴───────────────┘
```

## Governed by design

Governance is the architecture, not a plugin - the agent can't grant itself new permissions, and no prompt can talk it past a gate. Three tiers, all in this repo:

1. **Hard floors.** A set of dangerous and irreversible operations is human-only, always. No mode - including full auto-approve - lowers these floors; they always escalate to you.
2. **A ladder of earned autonomy.** Actions are approval-gated by default. One-off approvals can graduate into standing rules, then into config allowlists - each step explicit, visible, and revocable. In auto-approve mode a reviewer model lets routine actions through and escalates anything it isn't sure about to you; repeated denials trip a circuit breaker that pauses the reviewer and hands control back. Reviewer verdicts are judgments, not guarantees - the floors and the audit trail are what backstop them.
3. **An audit trail that answers "who did this, and why?"** Every tool call is recorded with its approval provenance - auto-approved, user-approved, or denied, with the reviewer's reasoning attached - and persisted with the conversation.

Unattended runs never self-approve: their asks park in an inbox until a human answers. Found a vulnerability? See [SECURITY.md](SECURITY.md).

## What it can do

- **Produce real deliverables** - documents, spreadsheets, reports, and web pages land as files you can open and share.
- **Work from Slack** - mention `@OpenWorker` in a channel; a session opens on your desktop, the work happens with your tools, and the answer comes back as a thread reply.
- **Use your everyday tools** - 25+ integrations including GitHub, Slack, Jira, Notion, Linear, HubSpot, Outlook, monday.com, Gmail, and Google Calendar, plus your **terminal and local files**. Any tool reachable over [MCP](https://modelcontextprotocol.io/) plugs in too, with per-tool control.
- **Run on a schedule** - automations for recurring work: a morning brief, a weekly report, a standing watch over a channel. Runs land in the app with full transcripts.
- **Ask before acting** - writes, sends, and shell commands are approval-gated. Unattended runs park their asks in an inbox instead of acting on their own.
- **Ask before acting** - writes, sends, and shell commands are approval-gated, with an optional auto-approve mode that still escalates anything uncertain - see [Governed by design](#governed-by-design).

## Bring your own model

Model access is yours: pick a provider, paste your key, switch anytime. Supported out of the box:

**OpenAI · Anthropic · Google Gemini · Inkling (Thinking Machines) · GLM (Z.ai) · DeepSeek · Kimi (Moonshot) · Qwen · MiniMax · Mistral · Grok (xAI)** - plus open-weight models via **Together** and **Fireworks**, and fully local models via **Ollama**.
**OpenAI · Anthropic · Google Gemini · BytePlus Ark · Volcengine Ark Agent Plan · Inkling (Thinking Machines) · GLM (Z.ai) · DeepSeek · Kimi (Moonshot) · Qwen · MiniMax · Mistral · Grok (xAI)** - plus open-weight models via **Together** and **Fireworks**, and fully local models via **Ollama**.

A curated model list marks what we've verified for tool-calling work. Adding any model string works at your own risk.

Expand Down
11 changes: 11 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Security Policy

OpenWorker is a security-positioned project; we hold ourselves to the standard we
pitch. If you find a vulnerability, we want to hear about it.

## Reporting a vulnerability

Email thetshineaung106@gmailcom** with:
Don't control anyone, thetshineaung106@gmail.com is the owner, the local window can be controlled privately, please follow this

bounty program at this time.
Loading