Synalinks
Hält Claude an der idiomatischen Synalinks API, anstatt Keras/DSPy/LangChain-Vermutungen
Getestet · Funktioniert
Was es kann
Referenz-Skill für das neuro-symbolische LM-Framework Synalinks: DataModel/Field/Input, JSON-Operatoren, die vier Program-Building-APIs, Generator/ChainOfThought-Module, Decision/Branch-Kontrollfluss, Agenten (FunctionCallingAgent, RLM, DeepAgent, MCP), DuckDB KnowledgeBase/RAG, Compile/Fit-Training, Rewards, Metriken und die RandomFewShot/OMEGA-Optimierer. Sie wird ausgelöst, wenn eine Aufgabe Synalinks oder seine API-Namen erwähnt, und liefert 17 ausführbare Beispielskripte mit erfassten Run-Logs plus 10 Deep-Dive-Referenzdokumente. Ihr Zweck ist es, das Modell davon abzuhalten, plausibel aussehenden Keras/DSPy/LangChain-ähnlichen Code zu schreiben, den die Synalinks-Laufzeit ablehnt.
Testbericht
Das Repo in ein temporäres HOME geklont (SKILL.md landete unter ~/.claude/skills/synalinks/SKILL.md), bestätigt, dass das YAML-Frontmatter zu name+description geparst wird (Beschreibung ist 1182 Zeichen lang, über dem 1024-Zeichen-Limit, das einige Skill-Validatoren erzwingen), und stichprobenartig scripts/simple_qa.py, scripts/deep_agent.py, references/api-reference.md, references/control-flow.md und references/simple_qa.log überprüft – alle HTTP 200. Ich habe synalinks 0.9.8 in einem venv installiert (wobei die nicht baubare `ladybug`-Graph-Abhängigkeit gestubbt wurde) und zwei Artefakte für dieselbe Aufgabe ausgeführt: Meine ungesteuerte BASELINE stieß auf vier separate reale Fehler in Folge – `TypeError: ChainOfThought.__init__() takes 1 positional argument`, dann `pydantic ValidationError: instructions Input should be a valid string` für eine Liste, dann `ValueError: All outputs values must be SymbolicDataModels. Received: coroutine` für ein fehlendes await, dann `TypeError: Type is not JSON serializable: MetaDataModel`, weil `Input(Question)` positionell an `schema=` bindet – während die SKILL-konforme Version den Graphen erstellte, kompilierte, die Modul-Zusammenfassungstabelle ausgab und beim LM-Aufruf (nur ollama war unerreichbar; kein lokales Modell in dieser Box) anmutig zu „no result“ degradierte. Jede von mir getestete API-Behauptung stimmte mit der Bibliothek überein (Sequential ohne Beschreibung löst den dokumentierten ValueError aus, SequentialPlanSynthesis fehlt tatsächlich in der öffentlichen API, alle aufgelisteten Module/Rewards/Optimierer existieren) und die mitgelieferten scripts/simple_qa.py und four_apis.py liefen unverändert bis zum LM-Aufruf; kleinere Mängel sind eval() in Beispiel-Rechner-Tools (references/agents-tools.md:232 ohne eingeschränkte Builtins) und ein Datasets-Abschnitt, der nur gsm8k/hotpotqa/arcagi auflistet, während 0.9.8 ~20 exponiert.
Getestet am: 2026-07-21 · Claude Code 2.x (agent harness)
Installation
rm -rf /tmp/synalinks-src git clone --depth 1 https://github.com/SynaLinks/synalinks-skills.git /tmp/synalinks-src mkdir -p ~/.claude/skills cp -R /tmp/synalinks-src/skills/synalinks ~/.claude/skills/synalinks # Alternative (repo's recommended path, needs Node): npx skills add SynaLinks/synalinks-skills --skill synalinks (add --global for ~/.claude/skills) # The skill itself is docs + example scripts only, no runtime deps. # To actually run scripts/*.py: Python >=3.12, `pip install synalinks` (v0.9.8 at test time) and a reachable LM, e.g. local ollama on http://localhost:11434. # Heads-up: synalinks depends on `ladybug`, which had no macOS arm64 wheel and failed to build from source without a make/rust toolchain; it is only needed for the optional property-graph store.
Befehle & Beispiel-Prompts
/synalinksHält Claude an der idiomatischen Synalinks API, anstatt Keras/DSPy/LangChain-Vermutungen
Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):
Build a Synalinks program with ChainOfThought generationAdd a Synalinks Decision branch to this agentDebug my Synalinks DataModel and Field setup