Commit Graph
1017 Commits
Author SHA1 Message Date
ZacharyZhang-NY 3704cec19b Kick off goal execution when a goal is created
A goal created from the Work page only wrote a goals row; nothing ever
read it, so the company never started working on it. Creating a goal now
produces an "Operationalize goal" kickoff task for the chosen owner (or
the top-level agent when unowned) and re-enables that agent's heartbeat,
so the autonomous queue worker starts the run - the same activation
contract the previous runtime had via goal_activated wakes and CEO
bootstrap. Onboarding shares the same kickoff module instead of its own
copy.
2026-06-09 20:03:09 -04:00
ZacharyZhang-NY bd9807ca8d Add Inbox page with standup and performance views
Inbox page has three tabs: Inbox (filterable by approvals, failures,
blocked, messages — shows chronological items with agent attribution),
Standup (per-agent daily summary with tasks/runs counts), and
Performance (company metrics with success rate, throughput, and
per-agent breakdown table).
2026-06-07 18:13:22 -04:00
ZacharyZhang-NY 157a677a31 Expand billing panel with cost breakdown and budget utilization
BillingPanel now shows: stat tiles (allocation, cap, requests, failures),
token usage summary (input/output chars), budget utilization progress
bar, per-agent cost breakdown table (budget, requests, I/O chars), and
per-provider activity table. Replaced the minimal single-table view.
2026-06-07 18:11:00 -04:00
ZacharyZhang-NY 55842d12a1 Add hiring pipeline with four-stage board view
HiringPipeline component shows agents across stages: Pending Approval,
Approved, Active, and Rejected. Each stage column shows agent cards
with role, department, and approval timing. Stage assignment is derived
from the agent's lifecycle and associated hire approval state.
2026-06-07 18:08:48 -04:00
ZacharyZhang-NY 2c12f68b4e Add five SVG dashboard charts to homepage
AgentWorkloadChart (bar), BudgetUtilizationChart (stacked bar),
RunActivityChart (7-day bar), SuccessRateChart (ring gauge), and
CostTrendChart (7-day line). Pure SVG, no external charting library.
Charts render from snapshot data in the DashboardCharts module.
2026-06-07 18:07:13 -04:00
ZacharyZhang-NY dfc45f5fde Add dedicated Run Center with queue, detail, and log viewer
Two-pane RunsPage: left pane shows searchable, filterable run queue
(by status: queued/running/completed/failed). Right pane shows full
run detail: agent, provider, trigger, timing, duration, execution
context, error messages for failures, and provider request response
text as a scrollable log viewer.
2026-06-07 18:04:35 -04:00
ZacharyZhang-NY ed9b3a3dd1 Add meetings, sprints, and approval decision notes
Migration 042 creates meetings and sprints tables, adds decision_notes
to approvals. Full-stack: MeetingService, SprintService, IPC channels,
preload bridge, domain types. UI: MeetingsPage with scheduling and
type filtering, SprintsPage with progress tracking, ApprovalDetailDialog
with decision notes textarea.
2026-06-07 18:01:58 -04:00
ZacharyZhang-NY 75e5d17a86 Implement full task inspector with subtasks, activity, and inline edit
Migration 041 adds parent_task_id to tasks for subtask hierarchy.
TaskDetailDialog now has three tabs: Overview (description, assignee,
project, goal, workspace, runs with error messages), Subtasks (child
tasks with status), and Activity (audit events and approval history).
Inline edit overlay covers title, description, assignee, risk, priority,
and parent task. Task delete is available from the dialog footer.
2026-06-07 17:55:59 -04:00
ZacharyZhang-NY 7a36a12d08 Add create_document tool to agent runtime
Agents can now create versioned company documents (PRD, spec, memo,
report, runbook, proposal, policy, guide) via the create_document tool.
Documents are persisted in the documents table and visible in the
Documents page.
2026-06-07 17:51:12 -04:00
ZacharyZhang-NY d50f0d8d1f Add Documents, Knowledge Base, and Automation pages
Three new pages in the sidebar navigation: Documents (CRUD with type
filtering, inline editing, status lifecycle), Knowledge Base (card grid
with category/importance filters, create/delete), and Automation (rule
table with trigger/action/priority/enable toggle, create/edit/delete).
Each page connects to the corresponding backend service from the
previous commit.
2026-06-07 17:49:39 -04:00
ZacharyZhang-NY b5b8f3ba3c Add document, knowledge, and automation subsystems
Migration 040 creates documents, knowledge_entries, and automation_rules
tables. Full-stack services (DocumentService, KnowledgeService,
AutomationService), IPC handlers, preload bridge, desktop-api types,
and domain records wired into the snapshot. UI pages follow next.
2026-06-07 17:46:55 -04:00
ZacharyZhang-NY 3b115e8bec Show projects under goals in timeline view
The timeline view now displays project pills under each goal with their
task completion counts, plus a section for unlinked tasks.
2026-06-07 17:41:18 -04:00
ZacharyZhang-NY a7fff3a122 Extend agent editor with department and budget fields
UpdateAgentInput now includes department and budgetCents. The edit dialog
on the Team page shows department and monthly budget alongside the
existing role, title, seniority, provider, and model fields.
2026-06-07 17:39:47 -04:00
ZacharyZhang-NY 22568866e8 Add workspace creation to settings panel
The workspace settings panel now includes an Add button that opens a
dialog with name, local path (with directory picker), and optional
project binding. Supports creating secondary workspaces beyond the
initial bootstrap workspace.
2026-06-07 17:38:09 -04:00
ZacharyZhang-NY 5f92cd0d75 Add goal, project, and workspace CRUD
Full-stack: IPC channels, command types, OrganizationService methods,
IPC handlers, preload bridge, desktop-api types, and UI dialogs on the
Work page. Users can now create goals and projects directly instead of
relying on the onboarding bootstrap.
2026-06-07 17:36:25 -04:00
ZacharyZhang-NY 2ef721774f Add agent run activity and recent messages to homepage
The homepage now shows two activity cards: recent agent runs (with
state, trigger, and timing) and recent chat messages (with sender,
channel, and message preview). Gives the operator real-time visibility
into what agents are doing.
2026-06-07 17:32:55 -04:00
ZacharyZhang-NY 8f4ccc1b7a Extract MentionTextarea and add @mention to thread replies
Shared MentionTextarea component provides @mention autocomplete in both
the channel composer and the thread reply composer. Type @ to see agents
and employees, arrow-navigate, Enter to select.
2026-06-07 17:29:51 -04:00
ZacharyZhang-NY 1997b4aea5 Add manager select to hire dialog
The hire dialog now shows a manager dropdown so new agents can be placed
under an existing agent in the org hierarchy.
2026-06-07 17:25:51 -04:00
ZacharyZhang-NY 3799f73069 Add @mention autocomplete to chat composer
Type @ in the message composer to see a dropdown of agents and employees.
Arrow keys navigate, Enter/Tab selects, Escape dismisses. The selected
handle is inserted at the cursor position.
2026-06-07 17:24:40 -04:00
ZacharyZhang-NY 477a0dff4a Inject chat thread context into agent task prompts
When a task_run is triggered by a chat @mention, the agent now receives
the full thread transcript (up to 20 messages) in its prompt so it
understands what it is replying to and can use the correct thread_id.
2026-06-07 17:22:21 -04:00
ZacharyZhang-NY 44f31b49fb Wake agents on @mention in chat messages
Agents were deaf to @mentions — only /agent slash commands triggered a
task_run. Now ChatService.sendMessage auto-wakes every mentioned agent
(skipping self-mentions and /agent which already handles it) by creating
a queued task_run through ChatAgentWakeService.wakeFromMention.
2026-06-07 17:20:58 -04:00
ZacharyZhang-NY abe578b1a0 Harden provider security and build dependencies 2026-06-07 14:04:32 -04:00
ZacharyZhang-NY 67d2cf5649 Split oversized renderer components 2026-06-07 13:52:42 -04:00
ZacharyZhang-NY 91d9b76281 Enable thread file attachments 2026-06-07 13:45:45 -04:00
ZacharyZhang-NY d5a7665893 Create project collaboration surface 2026-06-07 13:41:53 -04:00
ZacharyZhang-NY 3f34d1cf65 Create runnable agents from hire form 2026-06-07 13:37:36 -04:00
ZacharyZhang-NY 8eec454927 Queue agent runs from chat mentions 2026-06-07 13:34:27 -04:00
ZacharyZhang-NY ab546f822d Enable autonomous file handoffs 2026-06-07 13:25:28 -04:00
ZacharyZhang-NY 87dfa9345b Add zoom controls and Ctrl/Cmd-wheel zoom to the org chart 2026-05-30 16:27:22 -04:00
ZacharyZhang-NY afd96fe42c Rebuild the org chart with a real tidy-tree layout and centered connectors 2026-05-30 15:52:49 -04:00
ZacharyZhang-NY 6f23ac2877 Route agent messages to department channels and thread hand-offs between agents 2026-05-30 10:50:36 -04:00
ZacharyZhang-NY dd0bb5dc58 Render the team org chart as a hierarchical reporting tree 2026-05-30 10:42:37 -04:00
ZacharyZhang-NY 7dfe652eda Always show the model id field for custom providers 2026-05-30 02:12:58 -04:00
ZacharyZhang-NY 35e1097041 Let custom OpenAI/Anthropic-compatible providers take a hand-entered model id 2026-05-30 02:06:04 -04:00
ZacharyZhang-NY 1b0d766c0c Add GPT-5.5 to the curated lists and show curated providers as a dropdown 2026-05-30 01:42:07 -04:00
ZacharyZhang-NY 2dbab2c1fe Use a free-text model id for providers without an enumerable model list 2026-05-30 01:27:38 -04:00
ZacharyZhang-NY d4ace283d1 Gate the model picker behind credentials: fetch on Get models or after OAuth login 2026-05-30 01:05:14 -04:00
ZacharyZhang-NY ddd8663ecc Add live model refresh to the settings provider model picker 2026-05-30 00:53:50 -04:00
ZacharyZhang-NY cc876e6e16 Fetch live provider model lists instead of the hardcoded catalog 2026-05-30 00:51:42 -04:00
ZacharyZhang-NY 5737f76d6b Stop clipping the top provider card and drop the inline-form accent bar 2026-05-30 00:30:17 -04:00
ZacharyZhang-NY 5388165016 Show the provider credential form inline under the selected provider 2026-05-30 00:27:00 -04:00
ZacharyZhang-NY b9fa049494 Redesign the organization delete confirmation card 2026-05-30 00:13:25 -04:00
ZacharyZhang-NY c6e29d7fbe Make organization deletion cascade through credentials and immutable audit logs 2026-05-30 00:13:24 -04:00
ZacharyZhang-NY e14a4bfce8 Let agents post coordination messages so company channels are populated 2026-05-29 23:35:33 -04:00
ZacharyZhang-NY 54ad9d1909 Register agent deliverables as file objects so they appear on the Files page 2026-05-29 23:31:53 -04:00
ZacharyZhang-NY e7fa60d6b6 Auto-approve agent work in AI CEO mode instead of gating on the operator 2026-05-29 23:27:37 -04:00
ZacharyZhang-NY 9996b89f72 Show custom OpenAI/Anthropic-compatible providers in onboarding and settings 2026-05-29 22:56:01 -04:00
ZacharyZhang-NY 4d2425dde0 Run the agent loop on Azure, Bedrock and Vertex too
Every catalog provider can now drive agent execution:
- Azure OpenAI -> Chat Completions at the deployment URL with api-key
- AWS Bedrock -> Converse API signed natively with SigV4 (node:crypto)
- Vertex AI -> Gemini generateContent with a service-account JWT (RS256)
  exchanged for a cached access token

The credential resolver maps each cloud profile to the turn's needs; the router
covers all 16 providers. Pure encoders, the SigV4 signer and the GCP auth are
unit-tested; no AWS/GCP SDK dependency.
2026-05-29 22:43:42 -04:00
ZacharyZhang-NY 6c68836455 Add custom OpenAI- and Anthropic-compatible providers
New 'Custom OpenAI-compatible' and 'Custom Anthropic-compatible' providers let
an agent run against any compatible endpoint by base URL + key: the turn posts
Chat Completions (/chat/completions) or Anthropic Messages (/v1/messages) at the
configured base URL. Backfilled into existing orgs by migration 037.
2026-05-29 22:36:56 -04:00
ZacharyZhang-NY 937fdfa23f Run the agent loop on every provider, not just API keys
The loop was gated to API-key providers, so a GPT-account (Codex) CEO failed
with 'requires an API-key provider'. Port Pi's actual request handlers natively
so every agent-capable provider runs:
- chat-completions turn for xAI, Groq, Mistral, Cerebras, OpenRouter
- Codex SSE Responses for GPT account
- Anthropic-OAuth (Claude Code system + beta headers) for Claude Pro/Max
- Copilot proxy (baseUrl from the token) for GitHub Copilot
- Gemini Code Assist for Google Antigravity

A credential resolver refreshes expired OAuth access tokens at request time and
persists the rotation; the runner routes by provider key and passes the resolved
credential. The heartbeat now retries failed tasks (bounded to 3 attempts) so a
run that failed on the old gate recovers automatically. Cloud providers
(Azure/Bedrock/Vertex) still report a clear unsupported message.
2026-05-29 22:22:24 -04:00