FieldCure.AssistStudio.Runner 0.3.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global FieldCure.AssistStudio.Runner --version 0.3.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local FieldCure.AssistStudio.Runner --version 0.3.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=FieldCure.AssistStudio.Runner&version=0.3.0
                    
nuke :add-package FieldCure.AssistStudio.Runner --version 0.3.0
                    

FieldCure.AssistStudio.Runner

Headless LLM task automation engine — define natural language tasks, schedule them via Windows Task Scheduler, and get results delivered through Slack, Telegram, or Email. Runs as an MCP server for task management or standalone for headless execution.

Install

dotnet tool install -g FieldCure.AssistStudio.Runner

Quick Start

# Create runner.json config template
assiststudio-runner config init

# Set API key
assiststudio-runner config set-credential "Claude Sonnet" sk-ant-api03-...

# Start MCP server
assiststudio-runner serve

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "runner": {
      "command": "assiststudio-runner",
      "args": ["serve"]
    }
  }
}

Tools (7)

Tool Description Confirmation
create_task Create a task with prompt, schedule, and MCP servers Required
update_task Modify task fields (partial update) Required
delete_task Delete a task and its history Required
list_tasks List all tasks with last execution status
run_task Start task execution (async or wait up to 60s) Required
get_task_history Query execution history for a task
get_execution_status Check status of a running execution

Execution Modes

Mode Command Purpose
Serve assiststudio-runner serve MCP server for task CRUD + execution
Exec assiststudio-runner exec <task-id> Headless single-task execution
Config assiststudio-runner config <cmd> Credential and configuration management

Requirements

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
2.0.3 104 5/4/2026
2.0.2 91 5/4/2026
2.0.1 87 5/4/2026
2.0.0 90 5/4/2026
1.4.0 107 4/22/2026
1.3.0 109 4/21/2026
1.2.0 108 4/14/2026
1.1.4 104 4/8/2026
1.1.3 99 4/7/2026
1.1.2 86 4/7/2026
1.1.1 91 4/7/2026
1.1.0 93 4/7/2026
1.0.0 96 4/7/2026
0.5.0 114 4/3/2026
0.4.0 124 4/2/2026
0.3.0 103 3/31/2026
0.2.0 110 3/30/2026
0.1.0 112 3/30/2026

# Release Notes

## v0.3.0

- **Default MCP servers** — `defaultMcpServers` in runner.json, auto-bootstrapped for every task execution
- **Essentials auto-detection** — `BuildFromVault` includes FieldCure.Mcp.Essentials if installed
- **Safe tools bypass** — `get_environment` and `run_javascript` always allowed regardless of AllowedTools
- **`exclude_default_servers`** — per-task flag to opt out of default servers
- **Core dependency removed** — replaced `FieldCure.AssistStudio.Core` with `FieldCure.Ai.Providers` for independent releases
- **Test isolation** — `RUNNER_DATA_DIR` env var support; tests use temp directory

## v0.2.0 (2026-03-30)

- **Auto-config from Credential Manager** — `serve` mode auto-generates `runner.json` by scanning Windows Credential Manager for known provider API keys when no presets are configured
- **API key lookup fix** — resolve API keys by provider type (matching AssistStudio's storage format) instead of preset name
- **Preset resolution fallback** — `ResolvePreset` now falls back to matching by provider type when exact preset name match fails
- **CredentialService rewrite** — switch from direct PasswordVault API to `CredEnumerateW` P/Invoke for `PackAsTool` compatibility (net8.0 TFM)
- **Enhanced `config init`** — supports `--preset`, `--provider`, `--model`, `--if-missing` flags

## v0.1.0 (2026-03-30)

Initial release.

- **Dual-mode operation** — MCP server (`serve`) for task CRUD + execution, headless CLI (`exec`) for scheduled runs
- **7 MCP tools** — `create_task`, `update_task`, `delete_task`, `list_tasks`, `run_task`, `get_task_history`, `get_execution_status`
- **6-phase execution pipeline** — initialize, MCP bootstrap, LLM loop (CompleteAsync), summarize, notify, cleanup
- **Windows Task Scheduler integration** — cron-to-schtasks mapping (minute, hourly, daily, weekly, monthly)
- **Multi-provider LLM support** — Claude, OpenAI, Gemini, Ollama, Groq via AssistStudio.Core
- **MCP server orchestration** — tasks bootstrap configured MCP servers (Outbox, RAG, Filesystem, custom)
- **Safety-first tool control** — AllowedTools null = no tools; explicit allowlist required for headless execution
- **Secure credential storage** — Windows Credential Manager (DPAPI), shared with AssistStudio
- **SQLite storage** — WAL mode for concurrent serve + exec access; Tasks + TaskExecutions tables
- **Execution logging** — DB summary + detailed JSON logs with full conversation history per round
- **Result delivery** — optional Outbox channel notification with fallback channel for failures
- **CLI credential management** — `config init`, `set-credential`, `get-credential` subcommands
- **LLM retry policy** — configurable exponential backoff (3 attempts default)
- **Log retention** — automatic cleanup of old execution logs (30 days default)