Synalinks
Utrzymuje Claude'a na idiomatycznym API Synalinks zamiast zgadywania Keras/DSPy/LangChain
Testowano · Działa
Co robi ten skill
Umiejętność referencyjna dla neuro-symbolicznego frameworka LM Synalinks: DataModel/Field/Input, operatory JSON, cztery API do budowania programów, moduły Generator/ChainOfThought, przepływ sterowania Decision/Branch, agenci (FunctionCallingAgent, RLM, DeepAgent, MCP), DuckDB KnowledgeBase/RAG, kompilacja/dopasowanie treningu, nagrody, metryki i optymalizatory RandomFewShot/OMEGA. Uruchamia się, gdy zadanie wspomina Synalinks lub jego nazwy API, i dostarcza 17 uruchamialnych skryptów przykładowych z przechwyconymi logami uruchomień plus 10 szczegółowych dokumentów referencyjnych. Jego celem jest powstrzymanie modelu przed pisaniem wiarygodnie wyglądającego kodu w stylu Keras/DSPy/LangChain, który środowisko wykonawcze Synalinks odrzuca.
Raport z testu
Sklonowano repozytorium do tymczasowego HOME (SKILL.md wylądował w ~/.claude/skills/synalinks/SKILL.md), potwierdzono, że YAML frontmatter parsowany jest do name+description (description ma 1182 znaki, powyżej limitu 1024 znaków, który narzucają niektóre walidatory umiejętności), i sprawdzono wyrywkowo scripts/simple_qa.py, scripts/deep_agent.py, references/api-reference.md, references/control-flow.md i references/simple_qa.log — wszystkie HTTP 200. Zainstalowałem synalinks 0.9.8 w venv (stubując niemożliwą do zbudowania zależność grafową `ladybug`) i uruchomiłem dwa artefakty dla tego samego zadania: mój niekierowany BASELINE napotkał cztery oddzielne, rzeczywiste błędy sekwencyjnie — `TypeError: ChainOfThought.__init__() takes 1 positional argument`, następnie `pydantic ValidationError: instructions Input should be a valid string` dla listy, następnie `ValueError: All outputs values must be SymbolicDataModels. Received: coroutine` dla brakującego await, następnie `TypeError: Type is not JSON serializable: MetaDataModel` ponieważ `Input(Question)` pozycyjnie wiąże się z `schema=` — podczas gdy wersja zgodna z umiejętnością zbudowała graf, skompilowała, wydrukowała tabelę podsumowania modułu i elegancko zdegradowała do „no result” przy wywołaniu LM (tylko ollama była nieosiągalna; brak lokalnego modelu w tym pudełku). Każde twierdzenie API, które sprawdziłem, pasowało do biblioteki (Sequential bez opisu zgłasza udokumentowany ValueError, SequentialPlanSynthesis faktycznie jest nieobecny w publicznym API, wszystkie wymienione moduły/nagrody/optymalizatory istnieją), a dostarczone scripts/simple_qa.py i four_apis.py działały bez modyfikacji aż do wywołania LM; drobne niedociągnięcia to eval() w przykładowych narzędziach kalkulatora (references/agents-tools.md:232 bez ograniczonych wbudowanych funkcji) i sekcja datasets wymieniająca tylko gsm8k/hotpotqa/arcagi, podczas gdy 0.9.8 udostępnia ~20.
Testowano: 2026-07-21 · Claude Code 2.x (agent harness)
Instalacja
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.
Komendy i przykładowe prompty
/synalinksUtrzymuje Claude'a na idiomatycznym API Synalinks zamiast zgadywania Keras/DSPy/LangChain
Skille uruchamiają się na zwykłe polecenia — bez komend do zapamiętania. Po instalacji aktywują go prompty takie jak te (po angielsku):
Build a Synalinks program with ChainOfThought generationAdd a Synalinks Decision branch to this agentDebug my Synalinks DataModel and Field setup