Apache-2.0 bridge that lets DeepSeek Harness drive all thirteen ArtCraft studio apps (PhotoCraft, FilmCraft, EffectCraft, LightCraft, FigCraft and more) through ten agent tools, a same-origin HTTP job API and an 11-skill craft pack — 100% local, no cloud, no FFmpeg.
DSH integration
Native runtime
Author-claimed
Safety audit
Unaudited
Last verified
2026-10-31
License
Apache-2.0
01What can it help you accomplish?
Operate the ArtCraft studio apps from DeepSeek Harness chat — batch color-grade storyboard frames, run headless CLI edits, render animated titles, assemble and export the final cut
Real rendered files at caller-decided paths: graded images, H.264 / ProRes / DNxHR cuts with EBU R128 loudness normalization and burned-in captions, EffectCraft titles as MP4 / ProRes / Lottie
DeepSeek Harness users producing AI short-drama or other content pipelines who want repeatable, headless editing instead of manual app work
Drive a running ArtCraft app live over its JSON control channel — fine-tune a grade, scrub a cut, place timeline items, capture a screenshot
Synchronous control commands to running FilmCraft (9876), EffectCraft (9877), VectorCraft (7979) or LightCraft (7980) — 650+ FilmCraft engine commands, time as seconds / frame / timecode
Creators who want the agent working inside a live app window they can watch, rather than one-shot headless runs
02How to install into DeepSeek Harness
Prerequisites
- DeepSeek Harness (desktop), on any platform the Harness supports
- The ArtCraft apps you need, from getartcraft.com or the storytold GitHub releases — portable/installer builds ship the CLI binaries on Windows and Linux; macOS ships them as a separate notarized zip (author-tested versions: PhotoCraft 0.9, FilmCraft 0.8, EffectCraft early)
- Nothing else — no Python, no FFmpeg; the ArtCraft apps bring their own codecs
Installation steps
- 01
Get the plugin onto disk: clone this repository — any folder works; keeping it inside the Harness workspace next to your other local plugins is the convention
- 02
Register it with your Harness profile: add "@ninkch/dsh-artcraft": "^0.1.1" (from npm, or a link: path to this repo for local development) to the profile package.json dependencies, add the package name to dsh.profile.bundles, then run pnpm install --dir C:/Users/<you>/.dsh/profiles/desktop and restart the Harness once (Host-side code loads at startup)
- 03
Configure artcraft.config.json (copy from artcraft.config.json.example; recommended location C:\Users\<you>\.dsh\artcraft.config.json): set bins.* — a directory, a full path to the executable, or a bare name on PATH — and the control ports (filmcraft 9876 / effectcraft 9877); the file is re-read on every request, so path changes need no restart
Verify the integration
- In any Harness chat, ask your agent to run artcraft_status — green lights across bins.*.found and you're done
03DSH integration and capability boundaries
Native DSH plugin: registers ten artcraft_* agent tools and same-origin HTTP routes (/artcraft/api/*) inside the DSH Host, which spawns the ArtCraft family CLIs as child processes and dials the apps' JSON control channels on 127.0.0.1
Ten agent tools in chat
plain-language requests in any Harness chat — the agent composes the tools itself→toolchain health (artcraft_status), synchronous CLI runs (artcraft_cli), control-channel commands (artcraft_control), bridged file ops (artcraft_fs), 13-app capability catalog (artcraft_apps), live liveness (artcraft_live), plugin self-update (artcraft_update)
runs the family CLIs as child processesreads and writes files at caller-decided absolute pathsSame-origin HTTP job API (/artcraft/api/*)
POST /artcraft/api/job with { bin, args, outputs }, then poll GET /artcraft/api/job?id=… ; POST /artcraft/api/job/cancel to stop→job lifecycle with status (running/done/failed/timeout), stdout/stderr tail logs and output statting; streamed file downloads up to 2 GB
uploads capped at 320 MB per requestlong renders run as child processes off the request cycleLive control channel for running apps
app name (filmcraft 9876 / effectcraft 9877 / vectorcraft 7979 / lightcraft 7980) or an explicit port, plus engine commands such as timeline.place, effects.setParam, ui.screenshot→synchronous JSON control calls into the running app — filmcraft-cli commands lists 650+ engine commands; time accepts seconds, frame or timecode
the channel is loopback-only and unauthenticated; start the app with --control <port> firstBundled craft skill pack (11 skills)
loaded on demand inside the agent session (English index: skills/README.md)→ops know-how — artcraft-ops, shot language, edit rhythm, color/light, sound design, motion/VFX, delivery QC, style bible, film study, batch pipeline, multicam
Delivery QC and expert recipes
an exported artefact path (optionally platform/kind) for QC; a task intent for recipes→ok/warn/fail/manual checks with fix commands across video/audio/image/pdf/doc/sheet/deck/fig/cad; 8 built-in workflows and 14 task→skill→command chains
Family install auto-discovery
the current artcraft.config.json state→fills missing bins paths and auto-corrects stale ones across the 13-app family (config self-repair)
rewrites artcraft.config.json paths during self-repair
04Who is it for? When not to use it?
Good for
- DeepSeek Harness users producing AI short-drama or other content pipelines who want repeatable, headless editing instead of manual app work
- Creators who want the agent working inside a live app window they can watch, rather than one-shot headless runs
Not for
- The HTTP surface has no authentication and rides on the Harness web server, which listens on loopback only — treat the port as trusted-local, don't expose it to a network, and put a reverse proxy with auth in front if you must. Child processes are locked to the thirteen allow-listed family CLIs and the control channel only dials 127.0.0.1. Everything runs locally: no cloud round-trips, no accounts, no telemetry.
05Compatibility, maintenance and safety notes
- The HTTP surface has no authentication and rides on the Harness web server, which listens on loopback only — treat the port as trusted-local, don't expose it to a network, and put a reverse proxy with auth in front if you must. Child processes are locked to the thirteen allow-listed family CLIs and the control channel only dials 127.0.0.1. Everything runs locally: no cloud round-trips, no accounts, no telemetry.
- macOS does not bundle the family CLIs in its app builds — they ship as a separate notarized zip. Author-tested versions: PhotoCraft 0.9, FilmCraft 0.8, EffectCraft (early).
- All path arguments must be absolute (or a base absolute directory plus relative rel). Chat invocations default to the conversation workspace; a canvas front end points at its own project folder — the caller owns file locations.
- PhotoCraft's control channel is an authenticated variant and PdfCraft's is file-based; both are deliberately not proxied — use the headless CLI for those two. Other apps take dynamic ports: start them with app --port PORT and pass port to artcraft_control.
- Long jobs run as child processes: plugin reloads kill all child jobs by design; a hanging job can be listed with logs via GET /artcraft/api/job and cancelled by id.
Apache-2.0 · actively maintained (latest release v0.3.4, 2026-10-29)
06Frequently asked questions
What is ArtCraft?
ArtCraft is a family of thirteen free, fair-source reinventions of Adobe's studio tools, written from scratch in pure Rust: PhotoCraft (Photoshop), VectorCraft (Illustrator), FilmCraft (Premiere Pro), LightCraft (Lightroom), PdfCraft (Acrobat), EffectCraft (After Effects), DesignCraft (InDesign), WordCraft (Word), DeckCraft (PowerPoint), GridCraft (Excel), CADCraft (AutoCAD), SoundCraft (Pro Tools) and FigCraft (Figma). Its superpower: every menu item, slider and dialog is a command, drivable from a headless CLI, a JSON control channel or an MCP server.
Is ArtCraft an Adobe clone?
It is an independent open-source reimagining, not an Adobe product: the apps map onto Adobe categories (PhotoCraft ≈ Photoshop, FilmCraft ≈ Premiere Pro, LightCraft ≈ Lightroom, FigCraft ≈ Figma) but are built from scratch in Rust by the ArtCraft team. This plugin ships none of the ArtCraft apps' code — it only drives their public automation surfaces, and the apps' own licenses apply to the apps.
How do I install the PhotoCraft / FilmCraft CLIs?
Grab the apps from getartcraft.com or the storytold GitHub releases. Portable and installer builds ship the CLI binaries on Windows and Linux (photocraft-cli.exe and friends); macOS ships them as a separate notarized zip. Versions tested by the author: PhotoCraft 0.9, FilmCraft 0.8, EffectCraft (early). Point bins.* in artcraft.config.json at the folders — or run artcraft_discover to auto-fill and repair paths.
How do I add dsh-artcraft to DeepSeek Harness?
Add "@ninkch/dsh-artcraft": "^0.1.1" to your Harness profile's package.json dependencies and to dsh.profile.bundles, run pnpm install --dir C:/Users/<you>/.dsh/profiles/desktop, and restart the Harness. Then configure artcraft.config.json and verify in chat with artcraft_status — green lights across bins.*.found means you're done. The plugin is also on GitHub at NINKCH/dsh-artcraft.
Where do output files go, and does it need the cloud or FFmpeg?
Paths belong to the caller: chat invocations default to the current conversation workspace, a canvas front end writes under its own project folder, and all path arguments are absolute. Everything runs locally — no cloud round-trips, no accounts, no telemetry — and no Python or FFmpeg is needed because the ArtCraft apps bring their own codecs.
07Related DSH workflows
modlens
by liustack
Vision bridge for text-only models: paste an image, get structured JSON evidence (OCR, layout, semantics).
agent-vision-toolkit
by anionex
Vision toolkit and skills that give text-only LLMs eyes — multi-image understanding, image Q&A, OCR, frontend UI restoration and GUI automation, with optional agent integration.
dsh-vision-router
by ysr666
Eyes for text-only DeepSeek Harness agents: built-in free vision chain (no key) + pixel-level vision tools (Q&A, grounding, crop, pixel diff, colors, OCR, SVG trace, cutout, screenshots). One-command install, no Python, image turns work like ordinary tool-calling turns.
dsh-image-gen
by shanliuling
Adds in-chat multimodal image generation via a `generate_image` tool with multi-provider support (Gemini/OpenAI/Seedream), interactive preview, copy/download, and session-attached results.
08Data and sources
Drive the open-source ArtCraft studio apps — PhotoCraft, FilmCraft, EffectCraft — from DeepSeek Harness, in chat or from…
The plugin registers ten tools. The agent composes them, so plain language works:
- **In the browser** — a same-origin HTTP API (`/artcraft/api/*`) that any Harness web UI can call,
This plugin (`@ninkch/dsh-artcraft`): **Apache-2.0** — see [LICENSE](LICENSE). It ships none of the
can be driven from a headless CLI, a JSON control channel, or an MCP server.
This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-10-31. Found an error? Submit a correction.
Best DeepSeek Harness Plugins
Twelve plugins worth installing first — picked from the whole catalog, across every category.
