Commit Graph
2460 Commits
Author SHA1 Message Date
James Peter d469acdd20 ci(upstream-merge): make branding guide-only
- Remove auto-branding worktree + commit and failing guard
- Keep perma-deleted guard; generate VERIFY_branding.log for guidance
- verify.sh: record branding findings as notice, never fail rc; write branding log

Rationale: branding should be a suggestion, not a gate. Code/maintainers can
apply suggested changes explicitly in follow-ups while upstream merge is gated
solely by build + API invariants.
2025-09-15 10:25:20 +10:00
James Peter 0d9b8c5aad feat(tui/forms): introduce FormTextField and refactor /agents editor to use it\n\n- Add built on existing for reliable multi-line input, Shift-modified typing, Enter/newlines, undo, and paste normalization.\n- Replace ad-hoc string handling in SubagentEditorView with for name (single-line), orchestrator (multi-line), and agent (multi-line).\n- Render fields using the same wrapping engine as the composer; show a caret marker while focused.\n- Allow Shift+Up/Down to move the caret inside multi-line fields; plain Up/Down continue field navigation.\n- Newlines and multi-line paste now display correctly; Shift+letter and symbols work in all inputs.\n\nNote: left theme Create Custom as-is; it already accepts NONE|SHIFT and can be migrated to in a follow-up. 2025-09-15 07:24:27 +10:00
James Peter 4760a5aefc fix(tui/agents-editor): avoid nested runtime by persisting config asynchronously\n\n- Replace Handle::block_on with tokio::spawn for upsert_subagent_command\n- Prevent panic: 'Cannot start a runtime from within a runtime'\n- Keep immediate in-memory update for responsive UI 2025-09-15 06:55:25 +10:00
James Peter 21a38aa9d2 feat(tui/agents-editor): add per-field undo (Ctrl+Z), robust paste, and Enter-newline; prefill built-in instructions when missing\n\n- Ctrl+Z restores the last snapshot in the active field\n- Paste inserts into active field with Name newline-to-space normalization\n- Enter inserts newline in instruction fields (no Shift needed)\n- Editor height remains consistent with render to keep buttons visible 2025-09-14 21:50:06 +10:00
James Peter 86d512b9a4 feat(tui/agents-editor): seed built-in commands with editable default instructions; improve newline behavior\n\n- Prefill plan/solve/code orchestrator + agent instructions when no user config exists\n- Enter inserts newline in instruction fields (no Shift required)\n- Paste inserts into active field; Name strips newlines to spaces 2025-09-14 21:40:49 +10:00
James Peter 25c450a6a9 fix(tui/agents-editor): show buttons reliably; robust text input for fields\n\n- Correct height math: count both instruction labels; use consistent content width\n- Enable wrapping when rendering; reserve borders in height\n- Handle Shift+Enter newline in instruction fields\n- Implement handle_paste(): paste into active field (strip newlines in Name)\n- Keep Enter toggles for Mode/Agents and Save/Cancel actions 2025-09-14 21:34:24 +10:00
James Peter 3f9bb85937 fix(tui/list): restore bottom spacer above footer with unified layout\n\n- compute_layout now includes bottom_spacer_rows when footer present\n- desired_height and render consume the same reserved space\n- Ensures 4 command rows + spacer + 1-line footer are all visible 2025-09-14 21:27:23 +10:00
James Peter 638850e5fa refactor(tui): unify layout math for list + editor views\n\n- ListSelectionView: single compute_layout used by desired_height and render\n * Consistent content width, subtitle wrap, spacer, footer\n * Total height = borders + subtitle + spacer + rows + footer\n * rows_area uses exact remaining height (no double subtraction)\n- SubagentEditorView: desired_height uses same content width as render and adds borders\n * Ensures [ Save ] [ Cancel ] are included and visible\n- This resolves the recurring off-by-one row and clipped buttons 2025-09-14 21:25:26 +10:00
James Peter 6c8473e41b fix(tui/agents): ensure 4+ list rows visible by removing subtitle and trimming footer; show all built-ins + Add new without scrolling\n\n- Reserve only one footer line; drop extra spacer\n- Remove subtitle to reclaim space\n- Pass items.len() as max_rows so /plan,/solve,/code,Add new are all visible\n- Keep dynamic editor height for buttons visibility 2025-09-14 21:14:16 +10:00
James Peter c2f50f861f feat(tui/agents): limit agent list to 6 visible rows with scrolling; add description subtitle\n\n- ListSelectionView now supports a per-view max_rows\n- Agents list shows up to 6 rows (including Add new…), then scrolls\n- Subtitle explains agents and defaults; keeps Enter-to-configure UX 2025-09-14 21:07:59 +10:00
James Peter 5978ee353c feat(tui/agents): show "(press Enter to configure)" only on selected row; cap list to 5 agents + Add new (6 visible rows) with scroll; make list view support per-popup max_rows 2025-09-14 21:01:33 +10:00
James Peter 1f6b57b6a5 fix(tui/agents): remove caret line from overview and add spacing under 'Add new…'\n\n- Replace '▌' spacer with a blank line in list view\n- Reserve an extra row and render an explicit spacer above the footer\n- Buttons unchanged; editor height remains dynamic based on content 2025-09-14 20:55:20 +10:00
James Peter 253fee6bbd fix(tui/agents): enable arrow-key navigation in editor and tighten layout\n\n- Up/Down moves between fields; Left/Right toggles mode and navigates agents\n- Space toggles current agent selection\n- Enter on [ Save ] saves + closes; Enter/Esc on [ Cancel ] closes\n- Compact desired height to reduce blank space below buttons\n- Cursor highlight for current agent with primary color 2025-09-14 20:41:04 +10:00
James Peter 8ee99dc760 feat(tui/agents): interactive /agents UI with list + editor; remove param-based flow\n\n- New bottom pane views: AgentsSettingsView (list) and SubagentEditorView (form)\n- Shows built-in /plan, /solve, /code plus custom and Add New…\n- Editor provides Name, Mode (read-only/write), Agents multi-select summary,\n Orchestrator and Agent instruction fields, with [ Save ] [ Cancel ]\n- Persist via config_edit::upsert_subagent_command and update in-memory config\n- AppEvent::ShowSubagentEditor to open editor from list\n- Remove old /agents param parsing; keep zero warnings build 2025-09-14 20:35:03 +10:00
James Peter d758211dd0 fix(ci/triage): inline triage context in prompt and remove placeholder <comment> block; require exactly one comment block in output 2025-09-14 20:17:43 +10:00
James Peter 2317e685d2 feat(tui/agents): manage [[subagents.commands]] via /agents add|edit|delete and show config summary\n\n- Core: expose config_edit and add upsert/delete helpers for subagents\n- TUI: /agents now accepts actions and persists to config.toml\n- UI: show current subagents, usage hints, and availability\n- Slash runs already show acknowledgement for plan/solve/code with resolved agents 2025-09-14 20:14:41 +10:00
James Peter f1765c8e43 docs(config): add [[subagents.commands]] examples for plan/solve/code and a custom review command\n\n- Demonstrates read-only/write modes, agents list, and per-mode instructions\n- Matches new subagent configuration and TUI behavior 2025-09-14 20:06:37 +10:00
James Peter 3bcd8da6f5 feat(subagents): add [[subagents.commands]] config, resolution, and TUI acknowledgement for /plan|/solve|/code\n\n- Config: add SubagentCommandConfig and SubagentsToml; plumb into Config\n- Core: introduce format_subagent_command() returning resolved models, mode, and prompt\n- TUI: when using /plan|/solve|/code, show a notice with exact command, mode, and agents; use resolved prompt\n- Defaults: plan/solve read-only, code write; fall back to enabled agents or built-ins 2025-09-14 20:02:09 +10:00
James Peter 09f1db222c fix(ci/issue-comment): skip when workflow_run has no PR; soft‑fail resolve step and guard dependent steps 2025-09-14 20:01:35 +10:00
James Peter c3710f14e5 fix(tui/help): streamline Availability section and tidy formatting\n\n- Remove verbose tips under built-in agent availability\n- Drop redundant notes to keep help concise\n- Wrap long lines and simplify tuple destructuring in state restore\n- No functional behavior changes 2025-09-14 19:36:35 +10:00
James PeterandGitHub 944cb7db8a Merge: add Qwen agent defaults, env mirroring, and examples
Merge PR #148 into main following merge-only policy. Includes unpinned Qwen CLI integration, QWEN_MODEL override, and config example updates.
2025-09-14 19:34:03 +10:00
James Peter 4bccbed565 Merge origin/main: bring branch current before merge of PR 148 2025-09-14 19:33:55 +10:00
James Peter d073b4fd77 feat(core/agents): mirror Qwen/DashScope env vars and respect QWEN_MODEL; add qwen examples to config.toml.example\n\n- Do not pin a default Qwen model; let CLI track latest\n- Mirror QWEN_API_KEY↔DASHSCOPE_API_KEY and *_BASE_URL in write mode\n- Support optional QWEN_MODEL env to pass -m when set\n- Add qwen/qwen-safe examples to config.toml.example 2025-09-14 19:32:23 +10:00
GitHub Action f48b0fa74d docs(changelog): update for v0.2.147 [skip ci] 2025-09-14 09:31:57 +00:00
GitHub Action a436cb9659 chore(release): 0.2.147 [skip ci] v0.2.147 2025-09-14 09:30:52 +00:00
James PeterandGitHub ebbdfe30ff merge(core/git_worktree): opt-in submodule pointer mirroring
Implements safe opt-in mirroring of modified submodule gitlink pointers during /branch. Default unchanged; only regular files are copied. Supersedes minimal fix in #160.
2025-09-14 19:20:44 +10:00
paulbettner e98364603d core/git_worktree: opt-in mirroring of modified submodule pointers (CODEX_BRANCH_INCLUDE_SUBMODULES) 2025-09-13 22:38:09 -05:00
GitHub Action 4ba4104736 docs(changelog): update for v0.2.146 [skip ci] 2025-09-14 03:05:31 +00:00
GitHub Action 66c287fabf chore(release): 0.2.146 [skip ci] v0.2.146 2025-09-14 03:04:39 +00:00
James PeterandGitHub bf3c4cc044 Merge pull request #155 from just-every/issue-154
[sandbox-spawn-notfound] fix(core/agents): clearer Windows error and spawn check for sandboxed agents
2025-09-14 12:54:24 +10:00
James PeterandGitHub 882e014412 Merge pull request #158 from just-every/issue-157
[new-context-reset] fix(tui): make /new start a fresh core session
2025-09-14 12:48:42 +10:00
James Peter eaa86d4b50 Merge origin/main: adopt upstream release metadata; keep our workflow changes (triage threading + comment ordering) 2025-09-14 12:48:03 +10:00
James Peter 14a9262945 fix(workflows/triage): thread issue comments as separate user messages in safety screen; render comment digests oldest→newest in preview and triage contexts
- Safety screen (issue-triage.yml): send issue body first, then each issue comment as its own user message (chronological) for stable stream ordering.
- Issue comment workflow: show recent comments oldest→newest so newest appears at the bottom in both preview and triage contexts.
- No app code changes; build verified with ./build-fast.sh.
2025-09-14 12:47:48 +10:00
James Peter c00e782426 fix(workflows/issue-code): prefer CODE_GH_PAT for PR and branch pushes; remove GH_PAT usage for PR management 2025-09-14 06:43:50 +10:00
James Peter d757254867 fix(tui/markdown): rewrite web.run citation tokens into inline markdown links
Convert private-use citation markers (e.g., citeturn2search5) into inline markdown links so the TUI stops leaking raw tokens. Multiple refs per token are expanded to separate links. We use a stable placeholder target (ref:<id>) since the TUI does not receive a URL map yet. This keeps output readable now and is forward-compatible with a future sources table.
2025-09-14 06:10:24 +10:00
GitHub Action c3ddfd84f5 docs(changelog): update for v0.2.145 [skip ci] 2025-09-13 19:54:49 +00:00
GitHub Action 7bd8bcc4de chore(release): 0.2.145 [skip ci] v0.2.145 2025-09-13 19:53:42 +00:00
James Peter e4c1f40798 fix(ci/issue-comment): add checkout steps so scripts/openai-proxy.js exists in both jobs; align with upstream-merge/issue-code 2025-09-14 05:45:51 +10:00
James Peter 17d62c9184 Merge origin/main: keep our issue-comment gating fix 2025-09-14 05:39:41 +10:00
James Peter 66ac2e8dad fix(ci/issue-comment): avoid using secrets in step if; set job env OPENAI_API_KEY and gate with env.OPENAI_API_KEY != '' across comment job 2025-09-14 05:39:31 +10:00
just-every-code c33de4a67a Auto: address issue #157 - /new doesn't seem to reset context 2025-09-13 17:37:11 +00:00
just-every-code 8f440ad492 Auto: address issue #154 - Failed to spawn sandboxed agent: program not found 2025-09-13 12:50:59 +00:00
just-every-code 69044c7156 Auto: address issue #141 - Use Qwen-coder in /plan (and other shortcuts) 2025-09-13 09:56:41 +00:00
GitHub Action 24f86d3cc7 docs(changelog): update for v0.2.144 [skip ci] 2025-09-13 09:35:31 +00:00
GitHub Action be9da1a884 chore(release): 0.2.144 [skip ci] v0.2.144 2025-09-13 09:34:51 +00:00
James Peter 061259f64b fix(ci/issue-comment): make agent assertion non-fatal; fail only on proxy 5xx/upstream_error; keep fallback path working 2025-09-13 19:25:06 +10:00
James Peter 9d4b9f0880 chore(ci/issue-comment): print proxy log tail in dispatch_comment for easier debugging 2025-09-13 19:22:56 +10:00
James Peter 2bde4650b6 fix(ci/issue-comment): use ${{ }} expression syntax for secrets gating in step if-conditions to satisfy workflow parser 2025-09-13 19:22:22 +10:00
James Peter 2a55868458 Merge origin/main: adopt upstream version/notes; keep our CI fixes (preview+issue-comment) 2025-09-13 19:07:39 +10:00
James Peter b934688107 fix(ci/issue-comment): run agent only when OPENAI key exists; gate steps with secrets context; add proxy log tail for debug; avoid noisy stream errors 2025-09-13 19:07:25 +10:00