@knowsuchagency/fulcrum 3.9.0 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  Fulcrum is your AI-powered command center for shipping software. Built for technical solopreneurs and CTOs who need to multiply their leverage—not just chase the latest coding trend.
10
10
 
11
- Run Claude Code across multiple tasks in parallel. Stay connected to your agents via WhatsApp, Email, Discord, Telegram, or Slack. Let your AI assistant monitor messages, filter signal from noise, and send daily briefings—all while you focus on what matters.
11
+ Run Claude Code across multiple tasks in parallel. Choose Git worktrees for isolated code work, Scratch directories for non-git AI agent sessions, or Manual tasks for anything else. Stay connected to your agents via WhatsApp, Email, Discord, Telegram, or Slack. Let your AI assistant monitor messages, filter signal from noise, and send daily briefings—all while you focus on what matters.
12
12
 
13
13
  Fulcrum doesn't replace your tools—it gives you leverage over them. You configure Claude Code with the integrations you need (Notion, Linear, Stripe, whatever). Fulcrum is your window into Claude Code and a literal fulcrum: a small input that moves mountains.
14
14
 
@@ -17,7 +17,7 @@ Fulcrum doesn't replace your tools—it gives you leverage over them. You config
17
17
  - **Claude Code Ecosystem** — Deep integration with Claude Code. Connect via messaging channels, manage tasks, deploy from one dashboard.
18
18
  - **Proactive AI Concierge** — Your assistant monitors messages, stores important observations as memories, creates daily plans, and sends morning/evening briefings automatically.
19
19
  - **Work From Anywhere** — Run Fulcrum on a remote server. Close your laptop, agents keep working.
20
- - **Project Management** — Tasks with dependencies, due dates, time estimates, recurrence, labels, and attachments. Visual kanban boards.
20
+ - **Project Management** — Tasks with dependencies, due dates, time estimates, priority levels, recurrence, labels, and attachments. Visual kanban boards.
21
21
  - **Production Deployment** — Docker Compose with automatic Traefik routing and Cloudflare DNS/tunnels.
22
22
  - **Agent Memory** — Persistent knowledge store with full-text search. Agents remember across sessions.
23
23
  - **MCP-First Architecture** — 60+ tools exposed via Model Context Protocol. Agents discover what they need.
@@ -120,13 +120,23 @@ claude plugin install fulcrum@fulcrum --scope user
120
120
 
121
121
  ### Kanban Board & AI Assistant
122
122
 
123
- Track tasks from planning to done. Set up recurring tasks that auto-create the next occurrence when completed. The built-in AI assistant has full context of everything you're tracking—tasks, projects, apps—and can help with planning, documentation, or running MCP tools.
123
+ Track tasks from planning to done. Set priority levels (high/medium/low), pin important tasks to the top of lists, and set up recurring tasks that auto-create the next occurrence when completed. The built-in AI assistant has full context of everything you're tracking—tasks, projects, apps—and can help with planning, documentation, or running MCP tools.
124
124
 
125
125
  ![Kanban Board with AI Assistant](https://raw.githubusercontent.com/knowsuchagency/fulcrum/main/screenshots/kanban-with-assistant-dark.png)
126
126
 
127
+ ### Task Types
128
+
129
+ Three task types for different workflows:
130
+
131
+ | Type | Description |
132
+ |------|-------------|
133
+ | **Git** | Isolated git worktree with AI agent — for code changes with branch isolation |
134
+ | **Scratch** | Isolated directory with AI agent — for non-git work (scripts, analysis, experiments) |
135
+ | **Manual** | No agent, no directory — for tracking work done outside Fulcrum |
136
+
127
137
  ### Parallel Agent Orchestration
128
138
 
129
- Run multiple AI coding agents simultaneously across different tasks. Each task gets an isolated git worktree. Monitor and interact with all sessions from one screen.
139
+ Run multiple AI coding agents simultaneously across different tasks. Git tasks get isolated worktrees, Scratch tasks get isolated directories. Monitor and interact with all sessions from one screen.
130
140
 
131
141
  ![Parallel Agent Terminals](https://raw.githubusercontent.com/knowsuchagency/fulcrum/main/screenshots/parallel-agent-terminals-dark.png)
132
142
 
@@ -206,7 +216,7 @@ A two-tier memory system gives agents both always-on context and on-demand recal
206
216
 
207
217
  ### System Monitoring
208
218
 
209
- Track CPU, memory, and disk usage while your agents work. The Jobs tab manages systemd (Linux) or launchd (macOS) timers. The Messages tab shows all channel messages (WhatsApp, Discord, Telegram, Slack, Email) with filtering by channel and direction.
219
+ Track CPU, memory, and disk usage while your agents work. Jobs is a top-level page (`/jobs`, Cmd+6) for managing systemd (Linux) or launchd (macOS) timers. The Messages tab under Monitoring shows all channel messages (WhatsApp, Discord, Telegram, Slack, Email) with filtering by channel and direction.
210
220
 
211
221
  ![System Monitoring](https://raw.githubusercontent.com/knowsuchagency/fulcrum/main/screenshots/system-monitoring-dark.png)
212
222
 
@@ -246,7 +256,7 @@ Both plugins include an MCP server with 60+ tools:
246
256
 
247
257
  | Category | Description |
248
258
  |----------|-------------|
249
- | **Tasks** | Create, update, move tasks; manage links, labels, attachments, due dates, time estimates, recurrence |
259
+ | **Tasks** | Create, update, move tasks; manage links, labels, attachments, due dates, time estimates, priority, recurrence |
250
260
  | **Task Dependencies** | Define prerequisite tasks; visualize with dependency graph |
251
261
  | **Projects** | Manage projects with tags, notes, and file attachments |
252
262
  | **Repositories** | Add, configure, and link repositories to projects |
package/bin/fulcrum.js CHANGED
@@ -44579,9 +44579,10 @@ function registerListTasks(server, client) {
44579
44579
  });
44580
44580
  }
44581
44581
  function registerCreateTask(server, client) {
44582
- server.tool("create_task", "Create a new task. For worktree tasks, provide repoPath to create a git worktree. For non-worktree tasks, omit repoPath. When tags are provided, returns all existing tags for reference.", {
44582
+ server.tool("create_task", 'Create a new task. For worktree tasks, provide repoPath to create a git worktree. For scratch tasks, set type to "scratch" to create an isolated directory without git. For manual tasks, omit both repoPath and type. When tags are provided, returns all existing tags for reference.', {
44583
44583
  title: exports_external.string().describe("Task title"),
44584
- repoPath: exports_external.optional(exports_external.string()).describe("Absolute path to the git repository (optional for non-worktree tasks)"),
44584
+ type: exports_external.optional(exports_external.enum(["worktree", "scratch"])).describe('Task type: "worktree" for git worktree tasks (default when repoPath provided), "scratch" for isolated directory without git'),
44585
+ repoPath: exports_external.optional(exports_external.string()).describe("Absolute path to the git repository (optional for manual tasks)"),
44585
44586
  baseBranch: exports_external.optional(exports_external.string()).describe("Base branch for the worktree (default: main)"),
44586
44587
  branch: exports_external.optional(exports_external.string()).describe("Branch name for the task worktree (auto-generated if omitted)"),
44587
44588
  description: exports_external.optional(exports_external.string()).describe("Task description"),
@@ -44596,6 +44597,7 @@ function registerCreateTask(server, client) {
44596
44597
  recurrenceEndDate: exports_external.optional(exports_external.string()).describe("Stop recurring after this date (YYYY-MM-DD). Omit for no end date.")
44597
44598
  }, async ({
44598
44599
  title,
44600
+ type,
44599
44601
  repoPath,
44600
44602
  baseBranch,
44601
44603
  branch,
@@ -44615,6 +44617,7 @@ function registerCreateTask(server, client) {
44615
44617
  const effectiveBaseBranch = baseBranch ?? "main";
44616
44618
  const task = await client.createTask({
44617
44619
  title,
44620
+ type: type ?? null,
44618
44621
  repoPath: repoPath ?? null,
44619
44622
  repoName,
44620
44623
  baseBranch: repoPath ? effectiveBaseBranch : null,
@@ -46448,7 +46451,7 @@ async function runMcpServer(urlOverride, portOverride) {
46448
46451
  const client = new FulcrumClient(urlOverride, portOverride);
46449
46452
  const server = new McpServer({
46450
46453
  name: "fulcrum",
46451
- version: "3.9.0"
46454
+ version: "3.10.0"
46452
46455
  });
46453
46456
  registerTools(server, client);
46454
46457
  const transport = new StdioServerTransport;
@@ -48797,7 +48800,7 @@ var marketplace_default = `{
48797
48800
  "name": "fulcrum",
48798
48801
  "source": "./",
48799
48802
  "description": "Task orchestration for Claude Code",
48800
- "version": "3.9.0",
48803
+ "version": "3.10.0",
48801
48804
  "skills": [
48802
48805
  "./skills/fulcrum"
48803
48806
  ],
@@ -50001,7 +50004,7 @@ function compareVersions(v1, v2) {
50001
50004
  var package_default = {
50002
50005
  name: "@knowsuchagency/fulcrum",
50003
50006
  private: true,
50004
- version: "3.9.0",
50007
+ version: "3.10.0",
50005
50008
  description: "Harness Attention. Orchestrate Agents. Ship.",
50006
50009
  license: "PolyForm-Perimeter-1.0.0",
50007
50010
  type: "module",
@@ -50017,7 +50020,7 @@ var package_default = {
50017
50020
  "db:studio": "drizzle-kit studio"
50018
50021
  },
50019
50022
  dependencies: {
50020
- "@anthropic-ai/claude-agent-sdk": "0.2.41",
50023
+ "@anthropic-ai/claude-agent-sdk": "0.x",
50021
50024
  "@atlaskit/pragmatic-drag-and-drop": "^1.7.7",
50022
50025
  "@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0",
50023
50026
  "@azurity/pure-nerd-font": "^3.0.5",