Sophon Docs
Clients & Apps

DevStudio

Purpose-built IDE for authoring Sophon skills, agents, plugins, and apps — Monaco editor, manifest designer, testing, packaging, AI assistant.

Sophon DevStudio is an Electron-based IDE for developers extending Sophon. Four project types — Skill, Agent, Plugin, App — each scaffolded from a template, each with appropriate editors, validators, local test runners, and packaging tools. An AI assistant is built in for when you'd rather describe what you want than write it.

If you're going to ship a skill to the Marketplace or add a custom channel adapter to your deployment, DevStudio is where you'll spend time.

Who it's for

  • Skill developers — Python or C# skills for the Marketplace
  • Agent designers — custom SOUL.md + tool allowlist + model config
  • Plugin authors — deep .NET/gRPC extensions: channels, model providers, vault backends, document extractors, embedding providers
  • App builders — React mini-apps that host inside the Dashboard

Installation

Prerequisites

  • Node.js 20+
  • .NET 10 SDK (only if you're authoring plugins)
  • Git (for the bundled templates)

Installing from release

Download DevStudio-<version>.dmg (macOS) / .exe (Windows) / .AppImage (Linux) from https://releases.sophon.dev/devstudio. Install like any desktop app.

Running from source

cd src/Sophon.DevStudio
npm install
npm run dev

Launches Vite dev server + Electron window. Hot reload on renderer changes.

Creating a project

File → New Project (or Ctrl+Shift+N). Pick a type:

Skill

A sandboxed capability exposing one or more tools.

Files scaffolded:

  • manifest.json — name, version, tools, credentials, sandbox config, permissions
  • main.py or main.cs — entrypoint with one async function per tool
  • SKILL.md — natural-language guide the agent reads
  • README.md
  • .gitignore

Template picks: Python async (recommended for most skills), C# .NET 10 (for performance-sensitive work).

Agent

Custom agent personality + config.

Files scaffolded:

  • agent.json — model preferences, tool allowlist, routing
  • SOUL.md — personality
  • BOOT.md — first-run init
  • HEARTBEAT.md — heartbeat checklist
  • TOOLS.md — tool usage guide
  • AGENTS.md — multi-agent routing rules

Plugin

Out-of-process .NET gRPC plugin.

Project interfaces (pick one or more):

InterfaceExtends
IChannelAdapterNew messaging channel
IModelProviderNew LLM provider
IVaultBackendNew credential vault
IDocumentExtractorNew document format
IEmbeddingProviderNew embedding backend

Files scaffolded:

  • Plugin.csproj — .NET 10 project
  • PluginHost.cs — entry point
  • <Interface>.cs — stub implementation
  • manifest.json — plugin metadata
  • README.md

App

React mini-app that runs inside the Dashboard.

Files scaffolded:

  • package.json with @sophon/app-sdk installed
  • vite.config.ts
  • src/App.tsx
  • manifest.json — app metadata + which Dashboard slots it registers into
  • README.md

The IDE surfaces

Monaco editor

Multi-file editor with syntax highlighting, IntelliSense (TypeScript), Python type hints, find/replace, multi-cursor. Standard VS Code-like behavior.

Keyboard shortcuts follow VS Code:

  • Ctrl+P — quick file open
  • Ctrl+Shift+F — search across project
  • Ctrl+D — add next match to selection
  • Alt+Click — multi-cursor

Manifest designer

Instead of editing manifest.json by hand, the designer is a form: add / remove / rename tools, edit parameter schemas, pick risk levels, declare credential requirements. The form writes JSON; live preview shows the current manifest with validation markers.

Schema-aware — if you're editing a parameters field for a tool, you get a JSON Schema form instead of raw JSON.

SOUL editor

Markdown editor with live preview. Split view: edit on the left, rendered SOUL.md on the right. Template snippets for common SOUL sections (tone, values, behavior rules).

Local test runner

Run the skill/plugin locally without a Gateway:

  • Validate manifest — schema check, risk-level sanity, credential declaration
  • Dry-run a tool — paste sample params, see the output
  • Run sandbox — actually spin up the sandbox container (Docker + gVisor) and invoke the tool end-to-end
  • Gateway integration — point at a running Gateway, install the skill temporarily, invoke through the agent, stream the response

Package builder

Produces signed archives ready to upload:

  • .sophon-skill — zipped skill (manifest + code + SKILL.md)
  • .sophon-agent — zipped agent folder
  • .sophon-plugin — zipped plugin DLL + manifest + dependencies
  • .sophon-app — zipped built React bundle

Build pipeline runs:

  1. Security scan — static analysis for hard-coded secrets, dangerous patterns
  2. Manifest validation — schema + cross-reference check
  3. Bundle — gzip + SHA-256 hash
  4. Sign — if you have a signing key configured

Output goes to ./dist/.

AI assistant

Right sidebar chat that understands your project. Uses a configurable LLM provider (default: your Sophon Gateway's configured model).

Useful for:

  • "Write a tool that converts Markdown to PDF."
  • "This manifest fails validation — what's wrong?"
  • "Why does my skill get a 403 from the GitHub API?"
  • "Rewrite this SOUL.md to sound more formal."

The assistant has read access to your project files; you can also paste error messages and it'll reason about them.

Embedded terminal

xterm.js-based terminal pinned to the project root. Run pytest, dotnet test, npm run build, etc. without leaving DevStudio.

Wizard mode

For first-time users, New Project → Use Wizard walks step-by-step through:

  • Project name + author
  • Type
  • Primary feature (for skills: "what should this skill do?")
  • AI assistant generates a starting implementation
  • You review and adjust

Wizard mode is opt-in; experienced devs start from templates directly.

Testing against a Gateway

Settings → Gateway Integration — paste your Gateway URL and an auth token. DevStudio installs the skill/agent into a dev namespace that doesn't conflict with production.

From the Gateway integration panel:

  • Install the skill for local testing
  • Enable it on a specific agent
  • Open a chat session and invoke a tool
  • See live tool-call logs in DevStudio

Uninstall removes everything from the dev namespace.

Project templates

TemplateFor
Python async skill (minimal)Starting point — one tool, async def, docstring
Python async skill (with credentials)Shows how to declare and use brokered credentials
C# skill (.NET 10)Performance-sensitive or typed skills
Agent (minimal)Just SOUL.md + agent.json
Agent (with routing)Multi-agent routing example
Plugin: channel adapterStub IChannelAdapter — swap in your protocol
Plugin: model providerStub IModelProvider
Plugin: vault backendStub IVaultBackend
App: Dashboard widgetReact mini-app registered in the Home slot
App: full-pageReact mini-app with a top-level nav entry

Keyboard shortcuts

ShortcutAction
Ctrl+S / ⌘SSave current file
Ctrl+Shift+SSave all
Ctrl+Shift+NNew project
Ctrl+NNew file
Ctrl+BBuild package
Ctrl+TRun tests
Ctrl+K Ctrl+TToggle terminal
Ctrl+K Ctrl+VToggle manifest designer ↔ raw JSON
F5Run / install in dev Gateway

Uploading to the Marketplace

Once a skill is ready:

  1. Build package — Ctrl+B
  2. Sign — with your Marketplace publisher key (generate under Marketplace publisher portal)
  3. UploadFile → Upload to Marketplace or drag .sophon-skill into the Marketplace web app

Upload triggers marketplace-side security review (automated static analysis + sandbox test execution; optional manual review for paid skills).

Where to go next

  • Skills — the end-user view of what you're building
  • Skill Manifest Reference — full schema
  • docs/DEVSTUDIO.md in the Sophon repo — developer's guide with more internals