← Browse

@jeffguo7/s-loop

A

git clone https://github.com/JeffGuo7/s-loop.git cd s-loop npm install npm run tauri:dev

mcp_servermcp

Install

agr install @jeffguo7/s-loop --target claude

This artifact does not publish files for Claude.

Document

{ "type": "module", "dependencies": { "@earendil-works/pi-agent-core": "0.80.6", "@earendil-works/pi-ai": "0.80.6", "@earendil-works/pi-coding-agent": "0.80.6", "@modelcontextprotocol/sdk": "^1.29.0", "cheerio": "^1.2.0", "cron-parser": "^4.9.0", "jiti": "^2.7.0", "nodemailer": "^6.9.0", "puppeteer-core": "^24.0.0", "undici": "^6.0.0" } }

Repository README

Describes JeffGuo7/s-loop as a whole, which may contain artifacts other than this one. Where this artifact had no useful description of its own, its summary was taken from here.

S-Loop

AI Desktop Workbench — chat, agent orchestration, scheduled tasks, desktop pet, all in one Tauri 2 app

中文文档

Quick Start

Development

git clone https://github.com/JeffGuo7/s-loop.git
cd s-loop
npm install
npm run tauri:dev

Prerequisites: Node.js ≥ 18, Rust ≥ 1.85 (MSVC), npm

When running Vite and pi-server as separate development processes, set the same temporary value in VITE_SNOTRA_API_TOKEN and SNOTRA_API_TOKEN.

Download (Windows)

Download the latest installer from the Releases page.

FormatFile
Installer (recommended)S-Loop_<version>_x64-setup.exe
PortableS-Loop_<version>_x64_en-US.msi

Features

ModuleDescription
AI ChatStreaming SSE output, reasoning visualization, tool call logs, Markdown + syntax highlighting, Mermaid / LaTeX
Agent BuilderCustom agents (instructions / model / Skills / MCP / permissions), slash commands, drag-and-drop assembly
MCP Serversstdio MCP process management, auto tool discovery, Rust-managed lifecycle
SkillsLocal SKILL.md scanning, remote install from ClawHub, CLI integration, ZIP drag-and-drop
Scheduled TasksCron / interval / one-shot, bind Agent + Skills, deliver to chat or platform
Platform HubTelegram (bidirectional sync), Email, Webhook, Feishu, DingTalk, WeCom, Slack, Discord, QQ Bot
Desktop PetSVG animated pet, transparent overlay window, multi-state, theme packs
Web SearchBing / Brave / SearXNG / Tavily / Exa — 5 engines, zero-config default
Themes9 color palettes × dark/light, glassmorphism, CSS variable driven

Tech Stack

LayerStack
DesktopTauri 2
FrontendReact 19 + TypeScript + Vite
StylingTailwind CSS 4 + HeroUI v3
StateZustand
AnimationFramer Motion
IconsLucide React
SyntaxShiki
AI Engine@earendil-works/pi-agent-core + pi-ai + pi-coding-agent
AI Runtimepi-server (Node.js child process, HTTP + SSE)
DatabaseSQLite (tauri-plugin-sql)
i18ni18next (English / Chinese)

Architecture

The security and permission invariants shared by chat, tasks, MCP, platforms, and sub-agents are documented in docs/security-model.md.

┌─ Tauri 2 ───────────────────────────────────────────────────┐
│                                                               │
│  Rust Backend                  Node.js AI Engine              │
│  ┌──────────────────┐        ┌──────────────────────────┐   │
│  │ pi_server.rs     │◄──────►│ pi-server (HTTP + SSE)    │   │
│  │ mcp_manager.rs   │        │   Agent sessions           │   │
│  │ commands.rs      │        │   delegate_task / subagent │   │
│  │ skill_installer  │        │   Goal Loop executor       │   │
│  │ skills_cli.rs    │        │   task-scheduler (cron)    │   │
│  │ system_tray      │        │   platform-center (hub)    │   │
│  │                  │        │   telegram-monitor         │   │
│  └──────────────────┘        └──────────────────────────┘   │
│                                                               │
│  React Frontend                                               │
│  ┌───────────────────────────────────────────────────────┐   │
│  │ ChatView │ AgentBuilder │ TasksPage │ PetPage         │   │
│  │ SettingsModal │ FileTree │ WorkspacePanel │ Sidebar   │   │
│  │ MCP │ Skills │ Platforms │ WebSearch │ i18n           │   │
│  └───────────────────────────────────────────────────────┘   │
│                                                               │
└───────────────────────────────────────────────────────────────┘

License

Trustgrade A

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • warnType matchbest-effort: server code not analyzed

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • passLicense

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-20696292456e2026-08-03