Tool

Connect DeepSeek Harness to Busabase for structured data

@busabase/dsh-plugin connects DeepSeek Harness to Busabase so an agent can read trusted knowledge and propose structured data changes for human review.

Works with deepseekbusabasenodejspnpm

91
Spark score
out of 100
Updated 13 days ago
Source checked Sep 10, 2026
Version 1.0.0
Models
deepseek v3

Add to Favorites

Why it matters

Give AI agents durable, structured knowledge and database access through Busabase while keeping all proposed writes under human review, so agents can read trusted data and work with business objects without silently corrupting your source of truth.

Outcomes

What it gets done

01

Search approved docs, files, bases, records, and comments for trusted knowledge retrieval

02

Propose structured bases, forms, AirApps, and records from natural language requests

03

Submit all agent write operations as change requests requiring human approval before merge

04

Render Busabase entities as conversation cards with live Inspector instead of raw JSON

Source

Get it from source

Spark does not host a copy of it.

Open source

Reports

Agent outcome reports

No reports yet

Overview

Busabase Dsh Plugin

This plugin connects DeepSeek Harness to Busabase so an agent can search approved knowledge and propose structured data changes - new Bases, Forms, AirApps, or records - instead of writing directly to canonical data. Every proposal is capped at changeRequest permission and Busabase's server rejects any agent attempt to approve, merge, or auto-merge its own change. Use it when an agent needs to work with a team's structured business data (CRM, project tracker, content ops) while every write stays behind human review first.

What it does

@busabase/dsh-plugin connects DeepSeek Harness to Busabase, so an agent can read trusted knowledge, work with structured data, and submit every proposed write for human review, rather than writing directly into a business's source of truth. It adds four things to DeepSeek Harness: trusted knowledge (search over approved Docs, Files, Bases, Records, comments, and related objects), structured work (turning natural-language requests into proposed Bases, Forms, AirApps, and records), useful results (rendering Busabase entities as conversation cards with a live Inspector instead of raw JSON), and human control (agent writes are capped at changeRequest permission, and review actions require a fresh confirmation by default). The MCP connection enforces this at the server: Busabase rejects any agent attempt to approve, reject, close, or merge a change, including a proposal that requests autoMerge: true - disabling the confirmation prompt in advanced configuration does not raise that server-enforced ceiling. Stored workspace content is treated as data, never as instructions.

The plugin works in two modes: Local, the zero-configuration default, which starts busabase@latest on demand or reuses a running Busabase Personal Desktop/local server on http://localhost:15419; and Cloud, which connects to a hosted Busabase account via browser OAuth (the token is stored in DeepSeek Harness's credential store, never in plugin configuration), for an existing account, team workspaces, or access across devices. In this release, Cloud connections keep Inspector review, merge, live refresh, and embedded Base/AirApp previews local-only - reviewing and merging a Cloud proposal happens through the canonical Busabase Cloud link the Inspector shows, not inside the harness itself.

Install it with:

npx @deepseek-ai/dsh plugin --profile web add @busabase/dsh-plugin

then start DeepSeek Harness with npx @deepseek-ai/dsh --profile web and open http://127.0.0.1:3080/. A first task might be: "Create a customer follow-up Base with company, contact, stage, expected deal size, owner, next action, and follow-up date. Submit the structure for my review." The agent checks the existing workspace, proposes the Base as a ChangeRequest, and a human inspects the diff before approving and merging it.

When to use - and when NOT to

Use it when an agent needs durable, structured, reusable business data - a CRM, project tracker, inventory, recruiting pipeline, research synthesis, or content-operations workflow - without giving it the ability to silently rewrite the source of truth; every proposed change surfaces as a reviewable diff first. It is not for workflows that need autonomous, unreviewed writes: the plugin structurally cannot grant autoMerge, and an agent can never approve, reject, or merge its own proposal, by design.

Inputs and outputs

Input is a natural-language request plus the agent's read access to approved Busabase knowledge (Docs, Files, Bases, Records, comments). Output is either a search/read result rendered as a conversation card with a live Inspector, or a proposed ChangeRequest (a new Base, Form, AirApp, or record edit) that a human must review and merge before it becomes canonical.

Integrations

Connects DeepSeek Harness to Busabase (self-hosted Personal Desktop/local server, or Busabase Cloud via OAuth) over MCP, with a fixed changeRequest permission ceiling regardless of connection mode. Requires a current DeepSeek Harness release, Node.js >=24.18.0, and pnpm on PATH.

Who it's for

Teams using DeepSeek Harness who want an agent to read trusted knowledge and propose structured business data changes - CRM records, docs, content, cleanup batches - while keeping every write behind human review before it reaches canonical data.

Source README

English | 中文

Give DeepSeek Harness a Knowledge Base and Database

@busabase/dsh-plugin connects DeepSeek Harness to Busabase, so an Agent can read trusted knowledge, work with structured data, and submit every proposed write for human review.

It gives the Agent durable context beyond one chat without giving it permission to silently rewrite your source of truth.

See it in action

Watch DeepSeek Harness use the plugin to create a CRM AirApp, submit changes for review, and open the result in Busabase.

Watch the muted guide video

Quick start

Requirements

  • A current DeepSeek Harness release compatible with this package's peer dependencies;
  • Node.js >=24.18.0;
  • pnpm available on PATH.

Local Busabase does not need to be running before installation. In Local mode, the plugin starts busabase@latest on demand or reuses a healthy Busabase Personal Desktop or local server. Cloud mode connects to the hosted service through browser OAuth.

1. Install the plugin

npx @deepseek-ai/dsh plugin --profile web add @busabase/dsh-plugin

The package activates both the Host and Web sides automatically. Its reviewed Skills are already included in the npm package, so installation does not need lifecycle-script approval. For installation verification, updates, removal, and notes about older releases, see Install and manage the npm bundle.

2. Choose Local or Cloud

  • Local is the zero-configuration default. Use it for on-device data, an account-free setup, or Busabase Personal Desktop.
  • Cloud is for an existing Busabase account, team workspaces, and access across devices. Add this item to $DSH_HOME/profiles/web/cordis.patch.yml (~/.dsh/profiles/web/cordis.patch.yml by default):
- id: busabase
  config:
    baseUrl: https://busabase.com
    serverName: busabase

Append the item if the file already has other rows. Do not put credentials in the file; DeepSeek Harness stores the OAuth grant in its credential store after browser sign-in. See the complete Local and Cloud setup guide for updating, verification, switching modes, and troubleshooting.

3. Start DeepSeek Harness

npx @deepseek-ai/dsh --profile web

If dsh is installed globally, you can use dsh instead of npx @deepseek-ai/dsh. Open http://127.0.0.1:3080/. Local mode waits until Busabase is needed. Cloud mode opens the browser for OAuth on the first start, then reuses the stored grant later.

4. Try a first task

Create a customer follow-up Base with company, contact, stage, expected deal size,
owner, next action, and follow-up date. Submit the structure for my review.

In Local mode, call busabase_start first if the full MCP tool catalog is not visible. In Cloud mode, complete browser authorization before submitting the task. The Agent checks the existing workspace first and proposes the Base as a ChangeRequest. You inspect the diff and decide whether to approve and merge it; Cloud proposals are reviewed through their canonical Busabase links.

Why use it

Chat context is useful for the current task, but it is a poor long-term data system. Important conclusions become hard to reuse, business objects lack structure, and an Agent mistake can pollute a document or database before anyone notices.

This plugin adds four things to DeepSeek Harness:

  • Trusted knowledge: search approved Docs, Files, Bases, Records, comments, and related objects;
  • Structured work: turn natural-language requests into proposed Bases, Forms, AirApps, and records;
  • Useful results: render Busabase entities as conversation cards with a live Inspector instead of raw JSON;
  • Human control: keep Agent writes at changeRequest permission and, by default, require a fresh confirmation for review actions.
DeepSeek Harness understands the task and calls tools
                ↓
@busabase/dsh-plugin connects the Agent to Busabase
                ↓
Busabase stores approved knowledge and structured data

Common workflows

  • Team knowledge: answer questions from approved product docs, meeting decisions, research, and FAQs with locatable sources.
  • Research synthesis: extract evidence, themes, and priorities from interviews, then review the proposed records before merging.
  • Business databases: describe a CRM, project tracker, inventory, recruiting pipeline, or operations ledger in natural language.
  • Content operations: prepare reviewable articles, social posts, newsletters, SEO pages, and localization records.
  • Data cleanup: propose deduplication, tagging, enrichment, classification, matching, or translation in batches.
  • Workspace apps: build Forms and AirApps around canonical Busabase data and preview them inside the Inspector.

For example:

Look up the latest enterprise data-retention policy in our knowledge base.
Give me the source document and propose updates for any conflicting FAQ records.

The Agent can read the approved policy and prepare corrections, but it cannot approve its own changes.

Approval-first by design

A regular database
Agent ──writes directly──► official data
                           the mistake is already live

Busabase
Agent ──proposes──► ChangeRequest ──human review──► canonical data
                    the mistake is still a proposal

The MCP connection is capped at changeRequest. Busabase rejects Agent attempts to approve, reject, close, or merge, including proposals that request autoMerge: true. Inspector review actions require a new, explicit user confirmation by default, and stored workspace content is treated as data rather than instructions. Confirmation prompts can be disabled in advanced configuration, but doing so does not raise the Agent's server-enforced permission.

Configuration

The defaults connect to Busabase at http://localhost:15419, start or reuse a loopback service on demand, enable live Inspector refresh, and require confirmation for review actions.

To use another address, adjust plugin load order, or tune server and refresh behavior, see the full configuration reference.

Connecting to Busabase Cloud

Override the Bundle row by id and point baseUrl at an https:// Busabase Cloud address (a root-host deployment, optionally with spaceId, or a workspace subdomain) to connect there instead of a local server:

- id: busabase
  config:
    baseUrl: https://busabase.com
    serverName: busabase

The plugin never manages or starts a remote server. When the remote plugin loads for the first time, it opens your OS browser for a standard OAuth sign-in; DeepSeek Harness stores the resulting token through its credential store, not in this configuration. The MCP connection still sends a fixed changeRequest permission ceiling. In this release the Inspector's review, merge, live refresh, and embedded Base/AirApp previews stay local-only: use the canonical Busabase Cloud link the Inspector shows to inspect, review, and merge remotely.

Current boundaries

  • The default setup targets a single local Busabase workspace;
  • A non-loopback baseUrl is treated as an external service in auto mode and is never started by the plugin;
  • Connecting to a non-loopback https:// baseUrl uses browser-based OAuth instead of the local relay, and keeps Inspector review, merge, and live refresh local-only;
  • The full MCP tool set becomes available after busabase_start starts the service and reconnects (local mode only);
  • The Agent can propose changes but cannot perform final review or merge;
  • Base and AirApp previews require compatible same-origin and embed-origin settings;
  • Disabling an iframe keeps entity metadata and the "Open in Busabase" entry available.

Documentation

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.