Kanban
iii-hq/workers
File-backed kanban board: create, read, move and comment on tickets by key or uuid, assign agent profiles, and wake on comments through the kanban:comment trigger instead of polling.
Sync kanban board tasks to EOB weekly worklogs. An agent skill from cyanluna-git/cyanluna.skills.
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cyanluna-git/cyanluna.skills worklog-sync --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/worklog-sync .claude/skills/worklog-sync && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .claude/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-syncType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cyanluna-git/cyanluna.skills worklog-sync --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/worklog-sync .agents/skills/worklog-sync && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .agents/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cyanluna-git/cyanluna.skills worklog-sync --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/worklog-sync .cursor/skills/worklog-sync && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .cursor/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cyanluna-git/cyanluna.skills.git --path worklog-sync--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cyanluna-git/cyanluna.skills worklog-sync --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/worklog-sync .gemini/skills/worklog-sync && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .gemini/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cyanluna-git/cyanluna.skills worklog-syncInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/worklog-sync .github/skills/worklog-sync && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .github/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cyanluna-git/cyanluna.skills worklog-sync --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cyanluna-git/cyanluna.skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/worklog-sync .opencode/skills/worklog-sync && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "worklog-sync" agent skill from https://github.com/cyanluna-git/cyanluna.skills/tree/main/worklog-sync into .opencode/skills/worklog-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "worklog-sync", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
worklog-syncSync kanban board tasks to EOB weekly worklogs. An agent skill from cyanluna-git/cyanluna.skills.
Worklog Sync is an agent skill from cyanluna-git/cyanluna.skills. Sync kanban board tasks to EOB weekly worklogs. Reads completed/in-progress kanban cards, maps them to worklog projects, estimates hours from timestamps, aggregates by day, and submits via the EOB API.
Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `mapping.md`).
It sits in Productivity & Automation, covering Task management and Sprint planning and agile. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit df5be37. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlpython3From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
eob.10.182.252.32.sslip.iocyanlunakanban.vercel.appFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
KANBAN_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Worklog Sync loads about 3.2k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 718 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from cyanluna-git/cyanluna.skills at commit df5be37, republished under its MIT licence (© cyanluna-git). 718 words, ~3,215 tokens.
.claude/skills/worklog-sync/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Reads kanban board tasks and creates weekly worklog entries in the Engineering Operation Board (EOB). Tasks are aggregated by date + project + work type into one worklog card per group.
Each kanban project has a worklog_type:
| type | Behavior |
|---|---|
work | Maps to an EOB project; worklog created with project_id |
non-project | Worklog created without project_id (work type only) |
personal | Excluded from sync entirely |
Primary: Kanban DB project_settings table (via PUT /api/project-settings/:project)
Fallback: ~/.claude/worklog-sync.json → project_map (only if the deployed API has not been updated yet)
-- Kanban DB table (auto-created on connection)
CREATE TABLE IF NOT EXISTS project_settings (
project TEXT PRIMARY KEY,
worklog_type TEXT NOT NULL DEFAULT 'work',
eob_project_id TEXT,
eob_product_line_id TEXT,
default_work_type_code TEXT DEFAULT 'ENG-SW',
label TEXT
);KANBAN_API="$BASE_URL" # from kanban config
# List all
curl -s "${AUTH_HEADER[@]}" "$KANBAN_API/api/project-settings"
# Get one
curl -s "${AUTH_HEADER[@]}" "$KANBAN_API/api/project-settings/$PROJECT"
# Upsert
curl -s "${AUTH_HEADER[@]}" -X PUT "$KANBAN_API/api/project-settings/$PROJECT" \
-H 'Content-Type: application/json' \
-d '{"worklog_type":"work","eob_project_id":"<UUID>","default_work_type_code":"ENG-SW","label":"..."}'If the API returns 404, fall back to project_map in config file. Do not read any local DB directly.
~/.claude/worklog-sync.json:
{
"eob_base_url": "https://eob.10.182.252.32.sslip.io",
"kanban_api": "https://cyanlunakanban.vercel.app",
"kanban_auth_token": "<X-Kanban-Auth token>",
"access_token": null,
"refresh_token": null,
"user_id": null,
"project_map": {
"edwards.oqc.infra": { "worklog_type": "work", "eob_project_id": "ac78d5ae-a15e-4a40-9638-8109539d6633", "default_work_type_code": "ENG-SW", "label": "OQC Digitalization Infrastructure" },
"unify": { "worklog_type": "work", "eob_project_id": "013c7ee7-edcc-46bc-bcc8-55b15bb2481f", "default_work_type_code": "ENG-SW", "label": "Unify Plasma Single" },
"edwards.operation.board": { "worklog_type": "non-project", "default_work_type_code": "ENG-SW", "label": "Team DX / Productivity" },
"testrig-dashboard": { "worklog_type": "non-project", "default_work_type_code": "ENG-SW", "label": "Team Work" },
"3dx.api": { "worklog_type": "non-project", "default_work_type_code": "ENG-SW", "label": "3DX API (Team Work)" },
"cpet.db": { "worklog_type": "personal" },
"cpet": { "worklog_type": "personal" },
"ai.cycling.workout.planner": { "worklog_type": "personal" },
"ai-cycling-coach": { "worklog_type": "personal" },
"unahouse.finance": { "worklog_type": "personal" },
"today.bike": { "worklog_type": "personal" },
"asan.bicycle": { "worklog_type": "personal" },
"cyanluna-portfolio": { "worklog_type": "personal" },
"cyanluna.skills": { "worklog_type": "personal" },
"bangwahu": { "worklog_type": "personal" },
"remotion-video-gen": { "worklog_type": "personal" },
"type1recovery": { "worklog_type": "personal" },
"kanban-board": { "worklog_type": "personal" }
}
}/worklog-sync login — Authenticate with EOBAsk user for email and password via AskUserQuestion.
Authenticate:
EOB="https://eob.10.182.252.32.sslip.io"
AUTH=$(curl -s -X POST "$EOB/api/auth/login" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "username=$EMAIL&password=$PASSWORD")TOKEN=$(echo "$AUTH" | python3 -c "import sys,json; print(json.load(sys.stdin)['access_token'])")
REFRESH=$(echo "$AUTH" | python3 -c "import sys,json; print(json.load(sys.stdin)['refresh_token'])")
ME=$(curl -s "$EOB/api/auth/me" -H "Authorization: Bearer $TOKEN")
USER_ID=$(echo "$ME" | python3 -c "import sys,json; print(json.load(sys.stdin)['id'])")~/.claude/worklog-sync.json./worklog-sync map — Configure Project MappingBOARD=$(curl -s "${AUTH_HEADER[@]}" "$KANBAN_API/api/board")
# board.projects = ["project-a", "project-b", ...]
# board.project_settings = { "project-a": {...}, ... }PROJECTS=$(curl -s "$EOB/api/projects/hierarchy" -H "Authorization: Bearer $TOKEN")For each kanban project without settings, ask user via AskUserQuestion:
work / non-project / personalwork: select EOB project from hierarchySave via API:
curl -s "${AUTH_HEADER[@]}" -X PUT "$KANBAN_API/api/project-settings/$PROJECT" \
-H 'Content-Type: application/json' \
-d '{"worklog_type": "work", "eob_project_id": "...", "label": "..."}'/worklog-sync — Main Sync FlowProcedure:
CONFIG=$(cat ~/.claude/worklog-sync.json)
EOB=... TOKEN=... REFRESH=... USER_ID=... If token expired, try refresh → if refresh fails, prompt /worklog-sync login.
TODAY=$(date +%Y-%m-%d)
DOW=$(date -d "$TODAY" +%u)
MONDAY=$(date -d "$TODAY -$((DOW-1)) days" +%Y-%m-%d)
SUNDAY=$(date -d "$MONDAY +6 days" +%Y-%m-%d)KANBAN_API=$(echo "$CONFIG" | python3 -c "import sys,json; print(json.load(sys.stdin).get('kanban_api','https://cyanlunakanban.vercel.app'))")
KANBAN_TOKEN=$(echo "$CONFIG" | python3 -c "import sys,json; print(json.load(sys.stdin).get('kanban_auth_token',''))")
BOARD=$(curl -s -H "X-Kanban-Auth: $KANBAN_TOKEN" "$KANBAN_API/api/board")board.project_settings first, fall back to config.project_mapworklog_type == "personal" → skip entirelyCollect tasks relevant for the week
done with completed_at within the target weekimpl, impl_review, test, plan, plan_review with timestamps within the weekEstimate hours from timestamps
Use task lifecycle timestamps to calculate actual work time per day:
started_at → planned_at = planning work
planned_at → reviewed_at = review + iteration
reviewed_at → tested_at = implementation time
tested_at → completed_at = testing time
started_at → completed_at = total elapsed (fallback)Rules:
agent_log timestamps can be used for more granular per-day breakdownExample:
started_at=04/01 09:00, completed_at=04/02 15:00Fetch existing worklogs (duplicate check)
EXISTING=$(curl -s "$EOB/api/worklogs?user_id=$USER_ID&start_date=$MONDAY&end_date=$SUNDAY" \
-H "Authorization: Bearer $TOKEN")Skip if same date + project + similar description already exists.
WORK_TYPES=$(curl -s "$EOB/api/work-types/tree" -H "Authorization: Bearer $TOKEN")Aggregate into daily worklog cards
Core rule: same date + same project + same work_type → one worklog card.
Group all task entries by (date, project, work_type_code), then:
project_settings.eob_project_idDescription format — concise activity log, not individual task dumps:
인증 모듈 구현 완료, API 검증 수정, 사이드바 정렬 개선SW 개발 7건 (인증 모듈, API 검증 외 5건)Daily cap: If a single card exceeds 8h, cap at 8h. Remaining hours are dropped (user can adjust in preview).
Example aggregation:
Raw tasks for 02/27, OQC Digitalization, ENG-SW:
#37 run.sh 실행 모드 개선 (0.5h)
#40 SemiAutoTaskForm (0.5h)
#41 TaskSchema parser (0.5h)
#42 Edge Runner timeout (0.5h)
#44 Gherkin DB 마이그레이션 (0.5h)
→ Aggregated card:
date: 2026-02-27
project: OQC Digitalization Infrastructure
work_type: ENG-SW
hours: 2.5h
description: "run.sh 실행모드 개선, SemiAutoTaskForm, TaskSchema parser, Edge Runner timeout, Gherkin DB 마이그레이션 완료"Preview to user
## Worklog Preview: 2026-02-24 ~ 2026-03-01
| Date | Project | Type | Hours | Description |
|-------|----------------------|-------------|-------|----------------------------------------------------|
| 02/24 | OQC Digitalization | ENG-SW | 1.0h | DB 도메인 분리 완료 |
| 02/24 | Unify Plasma Single | ENG-SW | 5.5h | SQL 통합관리, db-viewer 제거, config manager 생성 외 |
| 02/25 | OQC Digitalization | ENG-SW | 2.0h | FT&CC 카탈로그, Inspection 선택, 자동화 배지 외 |
| 02/25 | OQC Digitalization | ENG-SW-TST | 0.5h | Auto task form 테스트 |
| 02/27 | OQC Digitalization | ENG-SW | 8.0h | Gherkin Pattern A, Corrective 탭, run.sh 개선 외 |
| 02/27 | Unify Plasma Single | ENG-SW | 8.0h | Config Manager 통합, Metadata Viewer 외 |
**Total: 35h / 12 cards** (personal 3건 제외)
Proceed? (Enter to confirm, or edit)User adjusts via AskUserQuestion if needed (hours, project, work type, date, remove).
Submit approved entries
curl -s -X POST "$EOB/api/worklogs" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d "{
\"date\": \"$DATE\",
\"user_id\": \"$USER_ID\",
\"project_id\": \"$PROJECT_ID\",
\"work_type_category_id\": $WTC_ID,
\"hours\": $HOURS,
\"description\": \"$DESCRIPTION\"
}"## Sync Complete
Created 3 entries (9h) for 2026-03-30 ~ 2026-04-05. Failed: 0/worklog-sync status — Weekly Summarycurl -s "$EOB/api/worklogs?user_id=$USER_ID&start_date=$MONDAY&end_date=$SUNDAY" \
-H "Authorization: Bearer $TOKEN"## Week: 2026-03-30 ~ 2026-04-05
| Day | Hours | Entries |
|-----|-------|---------|
| Mon 03/30 | 3.75h | 5 |
| Tue 03/31 | 4.0h | 5 |
| Wed 04/01 | 8.0h | 3 |
| Thu 04/02 | 4.5h | 8 |
| Fri 04/03 | 2.5h | 3 |
| **Total** | **22.75h / 40h** | **24** || Code | Name | When to Use |
|---|---|---|
ENG-SW | Software Development | Default for kanban coding tasks |
ENG-SW-COD | Implementation (Coding) | Specific coding work |
ENG-SW-REQ | Requirements Analysis | Planning/requirements tasks |
ENG-SW-TST | Unit Testing | Test writing |
ENG-SW-DBG | Debugging | Bug fixes |
PRJ-REV | Review & Approval | Code review tasks |
PRJ-PLN | Planning & Scheduling | Sprint planning |
MTG-INT | Internal Meeting | Team meetings |
QMS-QC | Quality Control | QC-related tasks |
SUP-TKT | Ticket/Issue Resolution | Support tickets |
When default_work_type_code doesn't cover it, infer from task content:
PRJ-REVENG-SW-DBGENG-SW-TSTMTG-INTQMS-QCdefault_work_type_codeproject_map for classification metadata.© cyanluna-git, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in worklog-sync of cyanluna-git/cyanluna.skills.
Open the folder on GitHubat commit df5be37
Worklog Sync next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Worklog Sync this skillcyanluna-git/cyanluna.skills | 183 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Kanbaniii-hq/workers | 113 | — | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Frappe Impl UI ComponentsImpertio-Studio/Frappe_Claude_Skill_Package | 187 | — | ~4.2k | Automated safety check: Pass | MIT | |
| Wrongstack KanbanWrongStack/WrongStack | 370 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Kanban Mdantopolskiy/kanban-md | 223 | — | ~4k | Automated safety check: Pass | MIT | |
| Herdr BoardnelsonPires5/herdr-board | 170 | — | ~4.6k | Automated safety check: Pass | None |
iii-hq/workers
File-backed kanban board: create, read, move and comment on tickets by key or uuid, assign agent profiles, and wake on comments through the kanban:comment trigger instead of polling.
Impertio-Studio/Frappe_Claude_Skill_Package
A skill your agent uses when building custom dialogs, extending List View, creating Page controllers, or adding Kanban/Calendar views and realtime updates.
WrongStack/WrongStack
Record substantial project work on WrongStack's IPC-backed Kanban board so it survives the session and other agents can see it.
antopolskiy/kanban-md
Manage project tasks using kanban-md, a file-based kanban board CLI.
nelsonPires5/herdr-board
Interact with the herdr-board kanban from inside an agent run or an interactive session.
Owl-Listener/designer-skills
Design the team's operating rhythm — task management, collaboration rituals, and tooling.
cyanluna-git/cyanluna.skills
Run multiple kanban tasks end-to-end in Rolling Wave order — refine each task based on the prior card's actual implementation, then implement, then verify, then refine the next.
cyanluna-git/cyanluna.skills
Manage project tasks in a local SQLite DB (~/.claude/kanban-dbs/{project}.db).
cyanluna-git/cyanluna.skills
Codebase exploration skill for uncertain implementation direction.
cyanluna-git/cyanluna.skills
Local markdown-file kanban for toy and personal projects. An agent skill from cyanluna-git/cyanluna.skills.
cyanluna-git/cyanluna.skills
Run the AI team pipeline for kanban tasks — orchestration loop with 6 agents (Planner, Critic, Builder, Shield, Inspector, Ranger), single-step execution, and code review.
cyanluna-git/cyanluna.skills
Turn vague intent into a precise, executable spec through 5 structured phases, then optionally create a kanban task.
Categories
Sync kanban board tasks to EOB weekly worklogs. An agent skill from cyanluna-git/cyanluna.skills. skills. Sync kanban board tasks to EOB weekly worklogs.
Worklog Sync fits situations like: tasks that involve Task management; tasks that involve Sprint planning and agile.
Run `npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a claude-code`. Or copy the skill folder (worklog-sync in cyanluna-git/cyanluna.skills) into .claude/skills/worklog-sync in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a codex`. Or copy the skill folder (worklog-sync in cyanluna-git/cyanluna.skills) into .agents/skills/worklog-sync in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cyanluna-git/cyanluna.skills --skill worklog-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/worklog-sync, .gemini/skills/worklog-sync, .github/skills/worklog-sync and .opencode/skills/worklog-sync in your project.
Going by SKILL.md and its folder, Worklog Sync needs the command-line tools its instructions call (curl and python3) and credentials named KANBAN_TOKEN. Our summary lists: Python 3; A credential in KANBAN_TOKEN.
SKILL.md names 2 domains. In commands or code: eob.10.182.252.32.sslip.io and cyanlunakanban.vercel.app; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Worklog Sync is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Worklog Sync: Kanban (iii-hq/workers, 113 stars), Frappe Impl UI Components (Impertio-Studio/Frappe_Claude_Skill_Package, 187 stars), Wrongstack Kanban (WrongStack/WrongStack, 370 stars) and Kanban Md (antopolskiy/kanban-md, 223 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cyanluna-git (a GitHub user) maintains it in cyanluna-git/cyanluna.skills, which has 183 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on June 22, 2026.
Source: cyanluna-git/cyanluna.skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.