Independent by design · no pay-to-rank placements  · How we evaluate tools →
Anclum Submit
L

LukaG712/Slinker

Isolated coding-agent execution with Git worktrees, persistent task state, and controlled project workflows

Before you install: no copy-paste command · no license recorded · link is dead

First step: git clone https://github.com/LukaG712/Slinker.git

no SECURITY.md
View on GitHub (unreachable when checked on 2026-11-12)This link returned 404 on 2026-11-12
Star count
0 ★ · LukaG712/Slinker · read from the GitHub search API · (checked 2026-10-26 20:00:26)
Source
read directly from its GitHub page · type: open-source project
Harvest history
first seen 2026-10-22 · last seen 2026-11-14 · seen 27× · listed by 1 sources
Score
score 103 · 1 sources · repo
FAQ (answers come from our records)
Who is it for?
We filed it under these tags: 开源项目. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository LukaG712/Slinker;first catalogued 2026-10-22;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.

# Slinker

以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →

> "These ghosts seem unassailable, don't worry they're still inhalable!"
> ~ Prof. E. Gadd, Luigi's Mansion 3
Luigi's Mansion origin: Slinker ~ stealthy ghost enemies from Luigi's Mansion 3 that slink along walls and floors.
Slinker is a production-quality coding-agent orchestration backend that executes AI coding tasks through the Junie CLI with Git worktree isolation, persistent SQLite storage, and a comprehensive REST API.
It serves as the execution engine for Greenie and Trapper, and also works standalone as an OpenAI-compatible HTTP service compatible with Open WebUI.
## At a Glance
| Feature | Description |
| Git Worktree Isolation | Each task runs in its own isolated Git branch ~ no interference with your main checkout |
| Persistent Storage | SQLite-based storage for tasks, projects, sessions, and workers with schema migrations |
| OpenAI-Compatible API | Drop-in replacement for OpenAI chat completions, works with Open WebUI |
| Honest SSE Streaming | Server-Sent Events that clearly distinguish progress from token output |
| Pluggable Context | Load context from MEMORY.md, session logs, Obsidian vaults, or custom sources |
| Optional Ollama Integration | Prompt refinement and summarization via Ollama (disabled by default) |
| Obsidian Sync | Mirror session logs to an Obsidian vault for knowledge management |
| Worker Registry | Track active workers, monitor concurrency, and manage task lifecycle |
| Security Hardened | Constant-time auth, input validation, safe subprocess invocation |
| Docker Ready | Containerized deployment with health checks |
## Quick Start
### Installation
bash
# Clone the repository
git clone https://github.com/LukaG712/Slinker.git
cd Slinker
# Install dependencies
pip install -r requirements.txt
# Configure environment
cp .env.example .env
# Edit .env with your API key and workspace path
### As an HTTP Service
bash
# Start the service
python -m orchestrator
# Or: uvicorn junieadapter.service:app --host 0.0.0.0 --port 8000
The service starts on port 8000 by default. Verify it's running:
bash
curl http://localhost:8000/health
# {"status": "ok", "service": "Slinker"}
### As a Python Module
python
from junieadapter import JunieAdapter, AdapterRequest
adapter = JunieAdapter(apikey="your-api-key", workspacepath="/path/to/project")
# Submit a task with worktree isolation
request = AdapterRequest(
task="Refactor the main module to use async/await",
projectpath="/path/to/project",
result = await adapter.submittask(request)
print(f"Status: {result.status}")
print(f"Changed files: {result.changedfiles}")
print(f"Diff summary: {result.diffsummary}")
### With Greenie
Slinker integrates with Greenie via the Slinkerprovider module. Configure it in hub.yaml:
yaml
# hub.yaml
agents:
name: coder
runner: Slinker
config:
apikey: "your-api-key"
workspacepath: "/path/to/workspace"
## Architecture
Slinker/
├── junieadapter/ # Core package
│ ├── init.py # Public API exports
│ ├── adapter.py # JunieAdapter ~ stable interface for Greenie
│ ├── config.py # OrchestratorConfig, IsolationMode, fromenv()
│ ├── contextprovider.py # Pluggable context loading interface
│ ├── junierunner.py # Junie CLI subprocess execution & JSON parsing
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[![Listed on Anclum](https://anclum.com/badge/listed.svg)](https://anclum.com/en/s/lukag712-slinker/)
Source
github · https://github.com/LukaG712/Slinker
Browse by field
Open source
added
today
Security policy
no SECURITY.md at the repository root (which does not mean it is unsafe)

More like this

All 1,671 →

Filed under

Every tag opens the full list for that filter. Counts are the live catalogue figures.

Browse all fields →

← Back to index