Skip to content

poc: tangent projects - #2660

Draft
maxy-shpfy wants to merge 2 commits into
08-19-poc_tangent_embed_uifrom
08-19-poc_tangent_projects
Draft

poc: tangent projects#2660
maxy-shpfy wants to merge 2 commits into
08-19-poc_tangent_embed_uifrom
08-19-poc_tangent_projects

Conversation

@maxy-shpfy

@maxy-shpfy maxy-shpfy commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Description

Introduces the Tangent Shell workspace — a beta-flagged area where users collaborate with Tangent agents to build, improve, and debug ML pipelines. The feature is gated behind a new tangent-shell feature flag and adds a full project management experience including:

  • A projects listing page (/tangent) with a prompt composer to create new projects and a grid of existing ones.
  • A project workspace page (/tangent/$projectId) with a docked sidebar (Sessions, Agents, Assets, Project Resources), a tabbed chat pane, and a resizable Dynamic Workarea that hosts embedded pipeline editors and artifact viewers side-by-side.
  • Per-tab embedded pipeline editors (EmbeddedPipelineEditor) that each host their own remote-env agent, allowing Tangent to drive multiple open pipelines simultaneously.
  • A project-level agent (TangentProjectAgentProvider) that registers workarea RPC tools (open_pipeline, list_workarea_tabs, close_workarea_tab) and a routing bridge that forwards editor commands to whichever pipeline tab is active.
  • Local-first persistence via a new Dexie database (tangentStorage) storing projects, sessions, resources, and a backlog.
  • A useTangentSettings hook that moves the Tangent base URL from a build-time env var (VITE_TANGENT_BASE_URL) into localStorage, letting users point tangle-ui at any Tangent origin without rebuilding. A corresponding settings UI is added to Agent Settings.
  • A custom TangentEmbedProvider that replaces the upstream TangentProvider, applying socket config synchronously so Socket.IO reads the correct origin before chat elements subscribe. It also handles mounted-prefix base URLs (e.g. /tangent) by splitting them into socketUrl + socketPath.
  • Shared utilities extracted to src/routes/v2/shared/tangent/: CloseableTabTrigger, TangentChatPane, useTangentSessionTabs, socketConfig, and constants.
  • @tangent/embed-react, @tangent/remote-subagent, and @tangent/shared dependencies switched from local file: paths to pinned GitHub tarball references.

Related Issue and Pull requests

Type of Change

  • Bug fix
  • New feature
  • Improvement
  • Cleanup/Refactor
  • Breaking change
  • Documentation update

Checklist

  • I have tested this does not break current pipelines / runs functionality
  • I have tested the changes on staging

Screenshots (if applicable)

Test Instructions

  1. Enable the tangent-shell beta flag in Settings → Feature Flags.
  2. Confirm a Tangent Shell entry with an "AI" badge appears in the sidebar.
  3. Navigate to /tangent and create a project using the prompt composer.
  4. Inside the project workspace, start a session and verify the chat pane connects to the configured Tangent origin.
  5. Use the Resources panel to attach a pipeline or run; confirm it appears in the Dynamic Workarea when opened.
  6. In Settings → Agent Settings, change the Tangent base URL, save, and verify the chat and remote-env connections use the new origin without a page reload.
  7. Reset the URL and confirm it reverts to http://localhost:5173.
  8. Verify that the existing editor Tangent chat window (when tangent-embed-chat is enabled) still works and is unaffected by the new workspace.

Additional Comments

The VITE_TANGENT_BASE_URL build-time constant has been removed. Any deployment that previously set this env var must instead configure the URL via the new Agent Settings UI or localStorage key tangle.tangent.config.

@github-actions

github-actions Bot commented Aug 21, 2026

Copy link
Copy Markdown

🎩 Preview

A preview build has been created at: 08-19-poc_tangent_projects/1669edd

Copy link
Copy Markdown
Collaborator Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@maxy-shpfy maxy-shpfy mentioned this pull request Aug 21, 2026
8 tasks
@maxy-shpfy
maxy-shpfy force-pushed the 08-19-poc_tangent_projects branch 8 times, most recently from f3f8164 to 31e0536 Compare August 25, 2026 00:14
@maxy-shpfy
maxy-shpfy force-pushed the 08-19-poc_tangent_projects branch from 31e0536 to 1669edd Compare August 25, 2026 04:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant