validate-piles-notation
О программе
Этот навык анализирует и проверяет строки в нотации PILES, используемые для определения групп слияния фрагментов в jigsawR. Он выполняет синтаксическую валидацию, преобразует нотацию в структурированные списки групп и может генерировать объяснения на естественном языке. Разработчикам следует использовать его для проверки пользовательского ввода перед `generate_puzzle()`, отладки проблем с группами слияния или проверки точности двусторонней сериализации.
Быстрая установка
Claude Code
Рекомендуетсяnpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/validate-piles-notationСкопируйте и вставьте эту команду в Claude Code для установки этого навыка
Документация
驗 PILES 之記
於 jigsawR 中析驗 PILES 之記之串,以指片融之群。
用時
- 用者所予之 PILES 串入
generate_puzzle()前驗之 - 排融群之疾(誤合之片、意外之果)
- 以淺辭述 PILES 之記於用者
- 試往返之忠:析 -> 群 -> 序 -> 析
入
- 必要:PILES 之記之串(如
"1-2-3,4-5") - 可選:拼圖果之物(為鄰之驗與關鍵字之解)
- 可選:拼圖之類(為關鍵字之支如
"center"、"ring1"、"R1")
法
第一步:語法之驗
library(jigsawR)
result <- validate_piles_syntax("1-2-3,4-5")
# Returns TRUE if valid, error message if invalid
察常見語法之訛:
- 括不對:
"1-2(-3)-4"之()不配 - 字非允:唯數、
-、,、:、(、)與關鍵字 - 空群:
"1-2,,3-4"(雙逗)
得:有效語法返 TRUE,無效返述訛之辭。
敗則:印 PILES 之串與驗訛之辭。
第二步:析為群
groups <- parse_piles("1-2-3,4-5")
# Returns: list(c(1, 2, 3), c(4, 5))
含範之串:
groups <- parse_piles("1:6,7-8")
# Returns: list(c(1, 2, 3, 4, 5, 6), c(7, 8))
得:整向之列,每融群一向,含正片 ID 與群之界。
敗則:先確 PILES 串已過第一步之語法驗。析返意外之群者,驗 - 分群內片、, 分群、範記(:)展為含端。
第三步:以淺辭述之
為用者述各群:
"1-2-3,4-5"-> 「群一:合片 1、2、3。群二:合片 4 與 5。」"1:6"-> 「群一:合片 1 至 6(六片)。」"center,ring1"-> 「群一:中心片。群二:環一之諸片。」
得:每融群以淺辭述,含片數與識,使非技用者能解。
敗則:關鍵字不能述(如 "ring1" 無明意)者,記或需拼圖果之物為脈絡。囑用者予拼圖類或用數片 ID。
第四步:對拼圖果之驗(可選)
若拼圖果之物可得,驗:
# Generate the puzzle first
puzzle <- generate_puzzle(type = "hexagonal", grid = c(3), size = c(200))
# Parse with puzzle context (resolves keywords)
groups <- parse_fusion("center,ring1", puzzle)
察:
- 諸片 ID 存於拼圖
- 關鍵字解為有效片集
- 合之片實鄰(否則警)
得:諸片 ID 有效。鄰片合而清。
敗則:列無效片 ID 或非鄰之對。
第五步:往返序之驗
驗析/序之忠:
original <- "1-2-3,4-5"
groups <- parse_piles(original)
roundtrip <- to_piles(groups)
# roundtrip should equal original (or canonical equivalent)
groups2 <- parse_piles(roundtrip)
identical(groups, groups2) # Must be TRUE
得:往返生同群列,確 parse_piles() 與 to_piles() 為逆。
敗則:往返異者,察序者是否規範化記(如片 ID 排序或範化為顯列)。範差可受,唯 identical(groups, groups2) 須返 TRUE。
PILES 速參
# Basic syntax
"1-2" # Fuse pieces 1 and 2
"1-2-3,4-5" # Two groups: (1,2,3) and (4,5)
"1:6" # Range: pieces 1 through 6
# Keywords (require puzzle_result)
"center" # Center piece (hex/concentric)
"ring1" # All pieces in ring 1
"R1" # Row 1 (rectangular)
"boundary" # All boundary pieces
# Functions
parse_piles("1-2-3,4-5") # Parse PILES string
parse_fusion("1-2-3", puzzle) # Auto-detect format
to_piles(list(c(1,2), c(3,4))) # Convert to PILES
validate_piles_syntax("1-2(-3)-4") # Validate syntax
驗
-
validate_piles_syntax()對有效串返 TRUE -
parse_piles()返正群列 - 往返序保群
- 關鍵字以拼圖脈絡正解
- 無效語法生明訛辭
陷
- 關鍵字無拼圖脈絡:如
"center"之關鍵字需拼圖果物。傳於parse_fusion(),非parse_piles()。 - 片始於一:片 ID 始於 1,非 0。
- 鄰與非鄰之合:合非鄰片可行而生意外之視果。可時驗鄰。
- 範之記:
"1:6"含兩端(1, 2, 3, 4, 5, 6)。
參
generate-puzzle— 生含融群之拼圖add-puzzle-type— 新類需 PILES/融之支run-puzzle-tests— 全套試 PILES 之析
GitHub репозиторий
Похожие навыки
content-collections
МетаЭтот навык предоставляет проверенную в продакшене настройку для Content Collections — TypeScript-ориентированного инструмента, который преобразует файлы Markdown/MDX в типобезопасные коллекции данных с валидацией Zod. Используйте его при создании блогов, сайтов документации или контентных приложений на Vite + React для обеспечения типобезопасности и автоматической проверки содержимого. Он охватывает всё: от настройки плагина Vite и компиляции MDX до оптимизации развертывания и валидации схем.
polymarket
МетаЭтот навык позволяет разработчикам создавать приложения на платформе прогнозных рынков Polymarket, включая интеграцию с API для торговли и получения рыночных данных. Он также обеспечивает потоковую передачу данных в реальном времени через WebSocket для отслеживания текущих сделок и рыночной активности. Используйте его для реализации торговых стратегий или создания инструментов, обрабатывающих обновления рынка в реальном времени.
creating-opencode-plugins
МетаЭтот навык помогает разработчикам создавать плагины OpenCode, которые подключаются к более чем 25 типам событий, таким как команды, файлы и операции LSP. Он предоставляет структуру плагина, спецификации API событий и шаблоны реализации для модулей на JavaScript/TypeScript. Используйте его, когда вам нужно перехватывать, отслеживать или расширять жизненный цикл ассистента OpenCode AI с помощью пользовательской событийно-ориентированной логики.
sglang
МетаSGLang — это высокопроизводительный фреймворк для обслуживания больших языковых моделей (LLM), специализирующийся на быстрой структурированной генерации JSON, regex и рабочих процессов агентов с использованием кэширования префиксов RadixAttention. Он обеспечивает значительно более высокую скорость вывода, особенно для задач с повторяющимися префиксами, что делает его идеальным для сложных структурированных результатов и многократных диалогов. Выбирайте SGLang вместо альтернатив, таких как vLLM, когда вам требуется ограниченное декодирование или вы создаете приложения с интенсивным совместным использованием префиксов.
