<feed xmlns='http://www.w3.org/2005/Atom'>
<title>claude-flow.git/renderer/src/components, branch claude-flow-v1</title>
<subtitle>A document-centric coding assistant</subtitle>
<id>https://code.northwest.io/claude-flow.git/atom?h=claude-flow-v1</id>
<link rel='self' href='https://code.northwest.io/claude-flow.git/atom?h=claude-flow-v1'/>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/'/>
<updated>2026-03-05T06:33:27+00:00</updated>
<entry>
<title>feat: Remove auto-send block from handleConfirmNewSession in App.tsx</title>
<updated>2026-03-05T06:33:27+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-05T06:33:27+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=27b6e3499d1c96982c67e445a8ee2fcbb16d9b9f'/>
<id>urn:sha1:27b6e3499d1c96982c67e445a8ee2fcbb16d9b9f</id>
<content type='text'>
- ✅ Remove auto-send block from handleConfirmNewSession in App.tsx
</content>
</entry>
<entry>
<title>feat: Thread optional `phase` param into `db/sessions.ts::cre… (+7 more)</title>
<updated>2026-03-05T05:36:32+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-05T05:36:32+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=73d2680b83ccbdbd8dfec2d319533e98b379b830'/>
<id>urn:sha1:73d2680b83ccbdbd8dfec2d319533e98b379b830</id>
<content type='text'>
- ✅ Thread optional `phase` param into `db/sessions.ts::createSession()`
- ✅ Thread optional `phase` param into `ipc/handlers.ts` sessions:create handler
- ✅ Thread optional `phase` param into `preload.ts` createSession API
- ✅ Update Plan phase system prompt to gracefully handle missing research.md
- ✅ Update Implement phase system prompt to gracefully handle missing plan.md
- ✅ Create `renderer/src/components/NewSessionModal.tsx`
- ✅ Update `App.tsx`: add modal state, split handler, add modal JSX
- ✅ Add modal CSS to `globals.css`
</content>
</entry>
<entry>
<title>feat: replace header dropdowns with collapsible sidebar tree</title>
<updated>2026-03-05T05:21:22+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-05T05:21:22+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=b6405dd6a4ba65fc5dc6746db7be7be7d0bb29f3'/>
<id>urn:sha1:b6405dd6a4ba65fc5dc6746db7be7be7d0bb29f3</id>
<content type='text'>
- Add Sidebar.tsx: project/session tree with inline rename, collapse/resize
- App.tsx: load all sessions at startup, sync selectedProject on session click
- Header.tsx: strip project/session UI, keep only right-side controls
- globals.css: add .main-layout, sidebar, item, and activity-dot styles
- Chat pane: move toggle button to left, use triangle icons matching sidebar
</content>
</entry>
<entry>
<title>feat: Create utils directory structure (+4 more)</title>
<updated>2026-03-01T20:02:34+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-01T20:02:34+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=ead65fd7d50ead785f437cc895c74146bd232702'/>
<id>urn:sha1:ead65fd7d50ead785f437cc895c74146bd232702</id>
<content type='text'>
- ✅ Create utils directory structure
- ✅ Implement formatRelativeTime function with all time ranges
- ✅ Implement formatSessionLabel function
- ✅ Add import to Header.tsx
- ✅ Update session dropdown option rendering
</content>
</entry>
<entry>
<title>feat(mcp): add tool discovery and per-tool permissions</title>
<updated>2026-03-01T18:15:14+00:00</updated>
<author>
<name>Clawd</name>
<email>ai@clawd.bot</email>
</author>
<published>2026-03-01T18:15:14+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=044d628a47f063bcbbd9adba7860542156a0c66e'/>
<id>urn:sha1:044d628a47f063bcbbd9adba7860542156a0c66e</id>
<content type='text'>
- Add MCP protocol client for tool discovery (initialize + tools/list)
- Show discovered tools in settings UI with enable/disable checkboxes
- Build explicit allowedTools list from enabled MCP tools
- Remove bypassPermissions hack - now uses proper tool allowlisting
- Format: mcp__servername__toolname for SDK allowedTools
</content>
</entry>
<entry>
<title>feat(settings): add MCP server configuration</title>
<updated>2026-03-01T16:45:09+00:00</updated>
<author>
<name>Clawd</name>
<email>ai@clawd.bot</email>
</author>
<published>2026-03-01T16:45:09+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=12099b4f8cd10002810438bd309e208169960107'/>
<id>urn:sha1:12099b4f8cd10002810438bd309e208169960107</id>
<content type='text'>
- Add McpSettings component with add/edit/delete server UI
- Support stdio (command + args + env) and sse/http (url + headers) transports
- Array builder for args, key-value builder for env vars and headers
- Pass mcpServers config to SDK query() calls
- Store config as JSON in settings table
</content>
</entry>
<entry>
<title>feat(settings): add configurable model selection</title>
<updated>2026-03-01T16:31:52+00:00</updated>
<author>
<name>Clawd</name>
<email>ai@clawd.bot</email>
</author>
<published>2026-03-01T16:31:52+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=d44d0f61e4026da35c0d1a4acb87ba71ed6cd599'/>
<id>urn:sha1:d44d0f61e4026da35c0d1a4acb87ba71ed6cd599</id>
<content type='text'>
- Add Model settings section with free-text input for model override
- Pass configured model through to SDK query() calls
- Display active model badge in ActionBar next to token usage
- Seed model state from DB on mount, update from system:init events
- Empty/unset value uses SDK default (no breaking change)
</content>
</entry>
<entry>
<title>feat: Add `activityStatus` state and `handleCancel` to App.ts… (+4 more)</title>
<updated>2026-03-01T16:10:35+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-01T16:10:35+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=afdf3d57cb7ae4cbf0a519d1b53872f151ecba87'/>
<id>urn:sha1:afdf3d57cb7ae4cbf0a519d1b53872f151ecba87</id>
<content type='text'>
- ✅ Add `activityStatus` state and `handleCancel` to App.tsx; update Escape handler
- ✅ Extend `onClaudeMessage` handler: tool_progress, task_progress, restructure result block
- ✅ Pass `activityStatus` and `onCancel` props to `&lt;ChatPane&gt;` in App.tsx
- ✅ Update ChatPane.tsx props interface and loading bubble render
- ✅ Add loading bubble CSS (flex layout, cancel × styles, pulse animation)
</content>
</entry>
<entry>
<title>feat: **`globals.css`** — Edit `.chat-pane`: remove `width: 3… (+7 more)</title>
<updated>2026-03-01T05:49:29+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-01T05:49:29+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=454453788e759fa16442e755434fbb842fa1acab'/>
<id>urn:sha1:454453788e759fa16442e755434fbb842fa1acab</id>
<content type='text'>
- ✅ **`globals.css`** — Edit `.chat-pane`: remove `width: 380px`, add `min-width: 0`, `overflow: hidden`, `transition: width 0.2s ease`
- ✅ **`globals.css`** — Insert `.chat-resize-handle`, `.chat-header`, `.chat-collapse-btn` rules after `.chat-pane` block
- ✅ **`globals.css`** — Append `::-webkit-scrollbar` rules at end of file
- ✅ **`ChatPane.tsx`** — Full rewrite: new props interface, header strip, conditional body, inline width style
- ✅ **`App.tsx`** — Add `chatWidth` + `chatCollapsed` state with lazy localStorage initialisers
- ✅ **`App.tsx`** — Add two `useEffect` persistence hooks
- ✅ **`App.tsx`** — Add `handleResizeMouseDown` function
- ✅ **`App.tsx`** — Update `.main-content` JSX: insert conditional resize handle div, pass new props to `&lt;ChatPane&gt;`
</content>
</entry>
<entry>
<title>feat: **1 — `git.ts`:** Add exported `getCurrentBranch` helpe… (+8 more)</title>
<updated>2026-03-01T05:35:39+00:00</updated>
<author>
<name>bndw</name>
<email>ben@bdw.to</email>
</author>
<published>2026-03-01T05:35:39+00:00</published>
<link rel='alternate' type='text/html' href='https://code.northwest.io/claude-flow.git/commit/?id=0484d97dfbc3b8a2e7878d3ab35a9895decdf467'/>
<id>urn:sha1:0484d97dfbc3b8a2e7878d3ab35a9895decdf467</id>
<content type='text'>
- ✅ **1 — `git.ts`:** Add exported `getCurrentBranch` helper after `ensureGitRepo`
- ✅ **2a — `ipc/handlers.ts`:** Update git import to include `ensureGitRepo` and `getCurrentBranch`
- ✅ **2b — `ipc/handlers.ts`:** Replace `workflow:advance` implement-phase block with branching-toggle logic
- ✅ **3 — `GitSettings.tsx`:** Create new settings component with pill toggle
- ✅ **4 — `SettingsPage.tsx`:** Add `"git"` section type, import, nav item, content render; fix both unicode glyphs
- ✅ **5 — `globals.css`:** Append toggle-row + pill toggle + maximize-btn CSS
- ✅ **6 — `index.ts`:** Add `ipcMain` to import; add `window:toggleMaximize` handler + maximize/unmaximize events inside `createWindow()`
- ✅ **7 — `preload.ts`:** Add `toggleMaximize` + `onWindowMaximized` to interface and `api` object
- ✅ **8 — `Header.tsx`:** Add `isMaximized` state + effect + maximize button in JSX
</content>
</entry>
</feed>
