70 Commits

Author SHA1 Message Date
kumarabhirup
3533aa3358
feat(web): persist file tree expansion and add column visibility callbacks
Save expanded file tree paths to localStorage so they survive page reloads, and surface an onColumnVisibilityChanged callback from DataTable/ObjectTable.
2026-03-05 19:09:34 -08:00
kumarabhirup
1c21b039fc
refactor(web): consolidate workspace onto root route with URL state machine
Move the workspace shell from /workspace to / and introduce a typed URL state codec (parseUrlState/serializeUrlState) for deep-linkable workspace params. Legacy /workspace URLs are still recognized for backward compatibility.
2026-03-05 19:09:29 -08:00
kumarabhirup
286d0fdb48
delete em all 2026-03-04 16:34:45 -08:00
kumarabhirup
4d6eec741d
npx denchclaw 2026-03-04 13:23:34 -08:00
kumarabhirup
bd859a52ef
test(web): add rich document editor interaction coverage 2026-03-04 11:15:04 -08:00
kumarabhirup
aaad832cc6
feat(web): add rich DOCX/TXT workspace editor 2026-03-04 11:14:48 -08:00
kumarabhirup
601d5231fb
feat(web): extract workspace editor toolbar primitives 2026-03-04 11:14:08 -08:00
kumarabhirup
c2fc170ac7
test(web): add exhaustive spreadsheet utility coverage 2026-03-04 11:09:18 -08:00
kumarabhirup
3f3ed89f49
feat(web): add editable spreadsheet workspace component 2026-03-04 11:09:02 -08:00
kumarabhirup
9012a6e658
test(web): add monaco code editor behavior coverage 2026-03-04 11:08:33 -08:00
kumarabhirup
ffda566fd3
feat(web): add spreadsheet data transform utilities 2026-03-04 11:08:23 -08:00
kumarabhirup
b2c946b08d
test(web): cover multi-view resolution and scheduling interactions 2026-03-04 11:07:54 -08:00
kumarabhirup
cd7ea43a91
feat(web): add calendar timeline gallery and list object views 2026-03-04 11:07:10 -08:00
kumarabhirup
3f6f181552
feat(web): add monaco workspace code editor 2026-03-04 11:06:40 -08:00
kumarabhirup
68015d6c14
refactor(web): enhance entry detail and object table components for improved data handling
This commit introduces several enhancements across the EntryDetailModal and ObjectTable components. Key changes include the addition of a FormattedFieldValue component for consistent display of various field types, improved handling of entry metadata, and the introduction of input type resolution for fields. Additionally, navigation callbacks for entries have been refined to support better interaction within the object table. These updates aim to streamline data presentation and enhance user experience.
2026-03-03 22:54:12 -08:00
kumarabhirup
8542f07783
refactor(web): improve data handling in DataTable and ObjectTable components
This commit refactors the DataTable and ObjectTable components to enhance state management. In DataTable, the column visibility state is now set more efficiently by defaulting to an empty object when no initial visibility is provided. In ObjectTable, local entries are introduced to maintain alignment with server updates, and a new callback for local value changes is added to EditableCell, improving the responsiveness of the UI during data edits. Additionally, the handling of row selection during bulk delete operations is updated to use local entries, ensuring consistency across the component's state.
2026-03-03 17:58:45 -08:00
kumarabhirup
70ca59a66d
refactor(web): show IDENTITY.md in workspace, filter managed skills, hide bootstrap toggle
IDENTITY.md is now user-editable (no longer a system file). Managed skill filter updated from dench to crm/browser. Bootstrap seed toggle hidden from create-workspace dialog.
2026-03-03 15:38:41 -08:00
kumarabhirup
f6eee0b398
refactor(cli): update workspace-seed with dynamic identity and dench skill
Build identity template with workspace path; add seedDenchSkill for skills/dench.
2026-03-03 13:47:38 -08:00
kumarabhirup
1adb7b926b
refactor(web): update workspace components for workspace model
ProfileSwitcher uses workspaces; create-workspace-dialog, empty-state, sidebar updated.
2026-03-03 13:46:54 -08:00
kumarabhirup
693811ccb2
test(web): add profile-switcher, object-filter-bar, stream-parser, and subagent-panel message tests 2026-03-02 18:36:19 -08:00
kumarabhirup
3ed8872f16
refactor(web): move profile management to workspace-sidebar 2026-03-02 18:35:34 -08:00
kumarabhirup
e7bdd45be1
feat(web): add IDENTITY.md to system file patterns in file-manager-tree 2026-03-02 18:35:27 -08:00
kumarabhirup
440e7063e2
refactor(web): simplify empty-state to remove inline workspace creation 2026-03-02 18:35:20 -08:00
kumarabhirup
f0135da82e
feat(web): add copyConfigAuth option to create-workspace-dialog 2026-03-02 18:35:13 -08:00
kumarabhirup
9542c60f66
feat(web): add workspace delete and profile discovery to profile-switcher 2026-03-02 18:35:03 -08:00
kumarabhirup
20ace16d4c
fix(web): prevent subagent sessions from leaking into chat sidebar
- Skip updateIndex for session IDs containing :subagent: so they don't
  appear as top-level "New Chat" entries in the sidebar
- Filter subagent IDs in the sidebar component as a safety net
- Clean up existing leaked entries from index.json

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-22 01:11:26 -08:00
kumarabhirup
c8ae7acbf4
fix: restore remaining merge regressions (SKILL.md, MIME types, showHidden, symlink, activeProfileHint) 2026-02-21 14:39:55 -08:00
kumarabhirup
92fadd6700
fix: filter non-parent events in main NDJSON handler and fix workspace creation path
Bug 1: Subagent events from gateway broadcasts were processed as parent
events because the sessionKey filter was accidentally removed during the
subagent decoupling refactor. Re-add the filter in wireChildProcess.

Bug 2: Creating workspaces at custom paths failed because:
- mkdir API rejected absolute paths outside workspace root
- Directory picker started at workspace root, not home
- Error responses from mkdir were silently swallowed
Add absolute path support to mkdir, handle errors in picker UI,
start picker at home dir, and normalize init route paths.
2026-02-21 13:45:11 -08:00
kumarabhirup
109b88b93c
web: restore functional features dropped by design merge
Restore backend/logic features that were incorrectly auto-merged from the
design branch:

- Spreadsheet viewer (xlsx, csv, ods, etc.) and xlsx dependency
- HTML iframe viewer with source toggle
- Directory picker modal for workspace creation
- Workspace registry for custom-path workspaces
- Session auto-discovery for orphaned sessions
- Workspace init seeding (CRM objects, DuckDB, templates, bootstrap files)
- Symlink resolution and showHidden in tree/browse routes
- Upload to workspace assets/ instead of hidden ~/.ironclaw/uploads/
- Webpack dev watcher config (next.config.ts)
- router.push for back-button navigation history
2026-02-21 13:10:32 -08:00
Mark
ca8ac9fda1 Revert "Merge kumar workspaces to design branch"
This reverts commit bf4445115b911fa7831e6a35f7d0114154bb58ec, reversing
changes made to face53f2341417e339c02d5d7d4c412b961f87f6.
2026-02-20 12:45:42 -08:00
Mark
bf4445115b Merge kumar workspaces to design branch 2026-02-20 12:04:56 -08:00
kumarabhirup
88d10ab800
web: add spreadsheet viewer with xlsx parsing support 2026-02-20 00:42:58 -08:00
kumarabhirup
436a07c3c8
web: add HTML viewer with rendered preview and code modes 2026-02-20 00:42:49 -08:00
kumarabhirup
8a0520d7bd
web: add symlink support and hidden-files toggle across workspace 2026-02-20 00:42:38 -08:00
Mark
6c6289eb2e Collapsible sidebar 2026-02-19 23:15:39 -08:00
Mark
5da7d46a49 Rename chat title 2026-02-19 22:54:23 -08:00
Mark
f960ed3030 Fix file link and add lookLikeFileLink detector and click to preview 2026-02-19 22:50:34 -08:00
Mark
fcbec6c4d6 Queue items (edit, send now, delete) 2026-02-19 21:58:10 -08:00
kumarabhirup
09f2d82c50
fix: ProfileSwitcher re-fetches profiles after workspace creation so new workspace shows as active 2026-02-19 21:56:37 -08:00
kumarabhirup
d43d226ee8
workspace: seed all bootstrap files + DuckDB on create, add directory picker 2026-02-19 21:38:36 -08:00
Mark
a0ba55feec Integrate file preview on the side 2026-02-19 17:46:54 -08:00
Mark
4f80c60f88 Unicode + Session delete (API + sidebar + chat header), sidebar loading state and layout, inline “thinking” spinner, chat sidebar CSS variables, and font/heading tweaks in the web app. 2026-02-19 16:50:52 -08:00
Mark
027593b350 Resizable sidebar 2026-02-19 15:42:23 -08:00
kumarabhirup
21f60da24d
🚀 RELEASE: Workspaces 2026-02-19 14:59:34 -08:00
kumarabhirup
673c122602
fix: resolve no-shadow lint errors in web app 2026-02-17 00:38:09 -08:00
kumarabhirup
b7baae188c
🚀 RELEASE: full table filter 2026-02-17 00:36:01 -08:00
kumarabhirup
dee323b7ad
fix lint/build errors and bump to 2026.2.15-1.4
- Fix all oxlint errors (curly, no-unused-vars, no-base-to-string,
  no-floating-promises, approx-constant, restrict-template-expressions)
- Fix TS build errors: rewrite update-cli.ts as thin wrapper over
  submodules, restore missing chat abort helpers in chat.ts
- Fix web build: wrap handleNewSession in async for ChatPanelHandle,
  add missing safeString helper to entry-detail-modal
- Bump version to 2026.2.15-1.4 and publish

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-16 00:30:13 -08:00
kumarabhirup
312fb33859
🐛 FIX: new session slow 2026-02-15 23:54:05 -08:00
kumarabhirup
4d2fb1e2a0
🚀 RELEASE: chat start stop 2026-02-15 23:42:13 -08:00
kumarabhirup
170231a54f
🚀 RELEASE: chat sesh stop + queue / workspace.duckdb flexibility / drag to root 2026-02-15 23:00:25 -08:00