Agent skill

Gaik Sync

by GAIK-project in GAIK-project/gaik-toolkit

Audits the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync.

MITAuto-check passedDocuments & Office

Install Gaik Sync

skills CLI
$ npx skills add GAIK-project/gaik-toolkit --skill gaik-sync -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install GAIK-project/gaik-toolkit gaik-sync --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/GAIK-project/gaik-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/gaik-sync .claude/skills/gaik-sync && rm -rf skills-src

Use ~/.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/

Facts

Skill name
gaik-sync
GitHub stars
100
Token cost
~4k tokens
SKILL.md length
1,904 words
Files
2 (incl. scripts)
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Audits the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync.

  • Works in 5 steps: Scan (deterministic backbone) → Reconstruct the change set → Classify and propose (no edits yet) → …
  • Documents & Office work in your project
  • SKILL.md covers Inputs, Phase 1 — Scan (deterministic…, Phase 2 — Reconstruct the… and Phase 3 — Classify and propose…, plus 3 more sections
  • Runs Python scripts from its folder; calls uv and git

What it does

Gaik Sync is an agent skill from GAIK-project/gaik-toolkit. Audits the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync. Use after changing gaik components (new component, renamed constructor/method, changed options, removed component, new install extra, new module) or after bumping the gaik version. Runs a deterministic introspection scan, classifies each finding, and edits only after you approve a change table.

Its SKILL.md is about 4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/audit_registry.py`).

It sits in Documents & Office. The repository describes itself as: Python toolkit providing reusable AI/ML utilities: schema extraction, structured outputs, and production-ready components. The licence is MIT.

When your agent uses it

  • Documents & Office work in your project

Example prompts

  • “Use the gaik-sync skill to audit the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik…”
  • “/gaik-sync”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Scan (deterministic backbone)
  2. Reconstruct the change set
  3. Classify and propose (no edits yet)
  4. Apply (approved rows only — requires explicit approval from Phase 3)
  5. Verify, then update the pin

What it can do on your machine

Read from SKILL.md and the folder at commit e516ece. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • uv
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Gaik Sync loads about 4k tokens when it runs. Until then it costs about 125 tokens; SKILL.md has 1,904 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~125
When it runs · the whole SKILL.md, loaded when a task matches
~4k

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.

Safety

Auto-check passed

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); the scripts in this folder are not scanned.

SKILL.md

The full file from GAIK-project/gaik-toolkit at commit e516ece, republished under its MIT licence (© GAIK-project). 1,904 words, ~3,975 tokens.

Download SKILL.mdSave it as .claude/skills/gaik-sync/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
gaik-sync
description
Audits the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync. Use after changing gaik components (new component, renamed constructor/method, changed options, removed component, new install extra, new module) or after bumping the gaik version. Runs a deterministic introspection scan, classifies each finding, and edits only after you approve a change table.

GAIK Sync — keep the Solution Wizard in step with gaik

The Solution Wizard (implementation_layer/solution_wizard/) drives PoC generation from four assets that mirror the gaik API. When gaik changes, these drift and the wizard silently produces wrong blueprints or PoCs that fail at runtime:

Wizard assetFileWhat drifts
Component registryregistries/gaik_component_registry.jsoncomponents added/removed/renamed, input/output_artifact_types, supported_providers, subsumes/uses_components, install_extra
Reference cardsregistries/component_reference_cards.jsonimport, construct kwargs, call method, returns, options
Selection guidanceSKILL.md (Phase 5/6)option-inference rules, subsumption rules, provider/model consistency
Schema constraintsCLAUDE.md + SKILL.md Phase 4ExtractionRequirements.field_type enum, Azure structured-output rules

Operating principle (same as the wizard itself): Python detects, the agent decides. The scan is deterministic; mapping each finding to the right edit — and judging whether a change is intentional — is your job. Never blind-delete a finding.

This skill does not modify gaik. It only edits the four wizard assets above.

Mandatory approval gate (applies in BOTH modes — never skip)

Regardless of mode, the order is always scan → present findings → wait for approval → sync only what was approved → test. Concretely:

  1. Always present the findings first. After the scan (and, in discovery mode, the diff reconstruction), show the user the full change table from Phase 3 before editing anything. This holds even in informed mode where the user already named the change, and even when there is only one finding.
  2. Never edit a wizard asset until the user has approved it. The user may approve all findings, approve a subset, amend rows, or reject. Apply (Phase 4) only the approved rows; leave everything else untouched.
  3. If the user approves nothing (or there are zero findings), stop after presenting — make no edits, run no sync, change no pin.
  4. Only after applying the approved subset do you run the tests and re-scan (Phase 5). Tests run against the synced changes, not before approval.

Do not batch-apply, do not "fix while scanning", and do not assume approval from the fact that the user invoked the skill. Invoking the skill authorizes the scan and the proposal, not the edits.


Inputs

Run in one of two modes. Prefer informed mode when the user tells you what they changed — it is faster and avoids false positives.

  • Informed mode — the user names the change ("I renamed model_provider to provider on LLMJudge", "I added a diarization option to Transcriber", "I added a new FormUnderstander component"). Treat that as the hypothesis and confirm it against gaik + the scan.
  • Discovery mode — the user just says "sync the wizard" or "check what changed". Reconstruct the change set yourself from the git diff and the scan.

Phase 1 — Scan (deterministic backbone)

Always start here. From the repo root, after uv sync --all-extras (components swallow a missing optional dependency, so a missing extra makes a class silently absent and shows up as false removed drift):

bash
uv run python .claude/skills/gaik-sync/scripts/audit_registry.py --json

This introspects the installed gaik and returns structured findings. Categories:

  • version — installed gaik vs the wizard's last-validated pin (gaik_validated_version.txt). Informational; it is the trigger, not a defect.
  • removed — a reference-card import no longer resolves (class gone or moved).
  • api_drift — a construct kwarg or call method no longer exists on the gaik class.
  • options — a card option name is not a real constructor parameter (often it moved to a method argument, or was renamed/removed).
  • parity — a registry component has no reference card.
  • new — a gaik subpackage no card references (a new component family, an internal helper to ignore, or an unrecognized public alias).

Read the human-readable report too for a quick overview:

bash
uv run python .claude/skills/gaik-sync/scripts/audit_registry.py

The scan only sees what introspection exposes. It cannot see subsumes relationships, install_extra packaging, input/output_artifact_types, or selection semantics — those need the diff (Phase 2) and your reading of gaik source.

Phase 2 — Reconstruct the change set

Informed mode: start from what the user told you. For each named change, open the relevant gaik source under implementation_layer/src/gaik/ and the matching card/registry entry to confirm the exact new signature, option, or path.

Discovery mode: find what changed in gaik since the last validated point.

bash
# What does the wizard consider its last-validated state?
cat implementation_layer/solution_wizard/gaik_validated_version.txt 2>/dev/null

# Local source changes (when gaik is edited in-repo):
git log --oneline -15 -- implementation_layer/src/gaik/
git diff HEAD~1 -- implementation_layer/src/gaik/

If gaik arrived as a dependency bump (no local source diff), the introspection scan in Phase 1 is your only signal — lean on it and read the installed source directly via the module paths in the findings.

For every scan finding, and every diff hunk, read the actual gaik class to establish ground truth before proposing an edit. Pay special attention to changes the scan can't detect on its own:

  • a component now provides a capability internally → a new subsumes entry (so the wizard stops adding a redundant step);
  • a new install_extra / pip extra → registry entry + pip_requirements will pick it up;
  • changed input/output artifact types → registry *_artifact_types;
  • a new option that should be auto-inferred from a blueprint field (e.g. human_review == yes) → SKILL.md Phase 5.

Phase 3 — Classify and propose (no edits yet)

Map every finding to a concrete edit and present a change table for approval. Use this exact shape (it mirrors the wizard's own Phase 11.1 change table):

| # | Finding | Category | File | Field / location | Current | Proposed | Confidence |
|---|---------|----------|------|------------------|---------|----------|------------|
| 1 | LLMJudge construct kwarg 'model_provider' gone | api_drift | component_reference_cards.json | LLMJudge.construct | model_provider= | provider= | high |
| 2 | parallel_transcriber subpackage untracked | new | gaik_component_registry.json + cards | new entry | (none) | add ParallelTranscriber | needs decision |

Rules for the table:

  • One row per finding. Group obviously-related rows (a rename usually touches construct + call + an option + SKILL.md).
  • For new findings, always ask whether it is a user-facing component to add, an internal helper to ignore, or a public alias of an already-registered component — do not assume. llm-style provider layers are usually internal. Approved aliases belong in ALIAS_SUBPACKAGES, mapped to their canonical package, and must not receive duplicate registry or card entries.
  • For options findings, check whether the option moved to a method argument before deleting it from the card; the wizard may still need to document it, just not as a constructor option.
  • Mark confidence. Anything below "high" gets an explicit question to the user before Phase 4.
  • If a finding is an intentional gaik deprecation with no wizard-side equivalent, say so and propose removing the registry/card entry (and any SKILL.md reference).

STOP here and present the table. Do not proceed to Phase 4 until the user responds. Explicitly ask them to approve all rows, approve a subset (by number), amend, or reject. If they approve nothing, end the run cleanly with no edits.

Phase 4 — Apply (approved rows only — requires explicit approval from Phase 3)

Edit only the four wizard assets, only the approved rows:

  • registries/gaik_component_registry.json — add/remove/modify entries; keep input_artifact_types, output_artifact_types, required_parameters, supported_providers, subsumes, install_extra correct.
  • registries/component_reference_cards.json — fix import, construct, call, returns, options; add cards for newly-tracked components.
  • SKILL.md (Phase 5/6, and Phase 4 schema constraints if the extraction contract changed) — selection rules, option inference, subsumption, provider/model consistency. For approved new software module findings, also check whether the Phase 5 module-first rule table (| Pattern | Module to try first |) needs a new row mapping the module's primary use-case pattern to its name. For approved new software module findings whose output_artifact_types is not structured_json (e.g. a report, audio, answer), also check whether Phase 2 Round 3 in SKILL.md has an explicit requirement-collection branch for that pattern — if not, add one describing what the wizard must ask the user about the target output (e.g. section titles, per-section instructions, and dependency relationships for a report module). For approved new software component findings, also check whether the Phase 5 Step 2 composition bullets (e.g. "Input is audio → Transcriber") need a new bullet for any input→output transformation the new component introduces that is not already covered.
  • CLAUDE.md in the wizard dir — only if a schema/field_type constraint changed.

Keep edits surgical and in the existing JSON/markdown style. Do not reformat whole files.

Show full SKILL.md (679 more words)Show less
Authoring a new entry from documentation (for approved new findings)

When the approved finding is a new component/module to add, do not guess the fields — source them. Introspection gives the mechanical fields; the component's own docs give the semantic ones. Gather, in this order:

  1. Constructor + method signatures — inspect.signature on the class (__init__ and the primary method). Gives required_parameters, optional_parameters, and the card's construct/call argument names.
    • required_parameters: parameters with no default on __init__ or the primary method.
    • optional_parameters: every remaining parameter from both __init__ and the primary method (e.g. run(), transcribe(), enhance_text()), excluding internal/programmatic ones (progress_callback, verbose, output_dir are typically not selection-relevant). When in doubt, include rather than omit — a complete list lets the wizard reason about all knobs.
    • options card array: for each optional parameter that affects output quality, format, cost, or workflow behaviour, add an entry with effect, selection_relevant, and infer_from. selection_relevant: true means the wizard should ask or infer it; false means it is documented for completeness only. Never omit a behaviour-changing flag simply because it has a sensible default.
  2. The component's README.md (under implementation_layer/src/gaik/software_components/<component>/ for components, implementation_layer/src/gaik/software_modules/<module>/ for modules) — gives best_for, known_limitations, quality_tradeoffs, and the prose for what the component is for. Do not invent these; quote/condense the README.
  3. The example script (implementation_layer/examples/software_components/<component>/ for components, implementation_layer/examples/software_modules/<module>/ for modules) — gives the verified call snippet, the returns shape, and a working construct line. The card's call/returns must match a real example, not a plausible-looking guess (this is the field most likely to break the scaffolded PoC).
  4. pyproject.toml / setup.cfg extras — gives install_extra (the gaik[<extra>] name).
  5. Artifact-type mapping — translate the Python input/output types into the blueprint's artifact-type vocabulary (audio, video, text, transcript, document, image, structured_json, answer, …), not raw Python types. Reuse the exact strings already used by sibling entries.
  6. subsumes — only set this if the new component provides a capability that an existing component also provides (so the wizard won't add both). This is a semantic judgement — state your reasoning in the change table and confirm with the user if unsure.

Registry entry required fields (validated on load against schemas/component_registry.schema.json): id, name, type, input_artifact_types, output_artifact_types, required_parameters, best_for, known_limitations, import_path, source_path, readme_path, example_script_path. Match the shape of the nearest existing entry of the same type (component vs module). For modules, also populate uses_components.

Reference card required keys: import, construct, call, returns (+ install_extra, and options for behaviour-changing flags with infer_from hints, + subsumes where relevant).

If any field cannot be sourced from the docs (e.g. there is no example script), say so explicitly in your summary and mark that field as a best-effort draft for the user to confirm — never silently fabricate best_for/known_limitations.

Phase 5 — Verify, then update the pin

Run the wizard's own structural tests (they cross-check cards against gaik via inspect) plus re-scan:

bash
uv run python -m pytest implementation_layer/solution_wizard/tests -q
uv run python .claude/skills/gaik-sync/scripts/audit_registry.py --strict   # expect exit 0 (version finding alone is OK)

When the only remaining finding is version (i.e. every defect is resolved), record the validated version in implementation_layer/solution_wizard/gaik_validated_version.txt so future runs detect the next drift. Write a clean release version X.Y.Z, never the installed version of an in-repo checkout: setuptools-scm reports it as a dev build such as 0.7.3.post1.dev5, and the release gate (scripts/release_check.py --version X.Y.Z) refuses a pin that differs from the version being released. Use the version you will tag next; when gaik arrived as a released dependency, its installed version is already clean. The audit keeps reporting installed != last-validated against a dev build; that finding is informational.

Report a short summary: which assets changed, which findings were intentionally ignored (and why), and the new validated version.


Notes

  • The scan is safe to run any time and edits nothing. Treat it as the wizard's "what changed in gaik?" probe.
  • parity and new findings are decisions, not defects — they may be deliberately unsupported. removed/api_drift/options are almost always real and should be fixed.
  • This skill complements the always-on guard tests/test_reference_cards.py. The tests fail loudly in CI when gaik is present; this skill is the guided remediation when they do, or a proactive check after a gaik change.
  • The version pin lives next to the registries it validates (implementation_layer/solution_wizard/gaik_validated_version.txt); it is created/updated only after a clean verify, so it never falsely claims sync.

© GAIK-project, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in .claude/skills/gaik-sync of GAIK-project/gaik-toolkit.

  • SKILL.md
  • scripts/audit_registry.py

Open the folder on GitHubat commit e516ece

Compare with similar skills

Gaik 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.

Gaik Sync compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gaik Sync this skillGAIK-project/gaik-toolkit100—~4kAutomated safety check: PassMIT
Markdown Article FormatterJimLiu/baoyu-skills26k6 repos~3.5kAutomated safety check: PassMIT
MarkitdownImCa0/just-laws78214 repos~3.2kAutomated safety check: NotesMIT
Obsidian MarkdownAtmosphere/atmosphere3.8k20 repos~1.3kAutomated safety check: PassApache-2.0
DOCXrvdbreemen/OTGW-firmware20733 repos~4.3kAutomated safety check: PassProprietary
Gzh Designisjiamu/gzh-design-skill3.9k1 repos~2.2kAutomated safety check: PassAGPL-3.0

Similar skills

  • Markdown Article Formatter

    JimLiu/baoyu-skills

    Reformats plain text or Markdown articles with frontmatter, a title, a summary, headings, bold, lists and code blocks, and saves a separate formatted copy.

    26k GitHub starsUsed in 6 repos~3.5k tokens
    Documents & OfficeAuto-check passed
  • Markitdown

    ImCa0/just-laws

    Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.

    782 GitHub starsUsed in 14 repos~3.2k tokens
    Documents & OfficeAuto-check: notes
  • Obsidian Markdown

    Atmosphere/atmosphere

    Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax.

    3.8k GitHub starsUsed in 20 repos~1.3k tokens
    Documents & OfficeAuto-check passed
  • DOCX

    rvdbreemen/OTGW-firmware

    A skill your agent uses whenever the user wants to create, read, edit, or manipulate Word documents (.docx files).

    207 GitHub starsUsed in 33 repos~4.3k tokens
    Documents & OfficeAuto-check passed
  • Gzh Design

    isjiamu/gzh-design-skill

    微信公众号文章排版引擎,将 Markdown 转换为可直接粘贴到公众号编辑器的 HTML。主题风格从 references/theme-index.md 注册的自定义主题库中选取,自动章节编号、关键词下划线标记、引言卡片、目录导航、代码块、图片/GIF、作者签名。支持 Markdown / Word(.docx) / PDF / 纯文本输入(非 Markdown…

    3.9k GitHub starsUsed in 1 repo~2.2k tokens
    Documents & OfficeAuto-check passed
  • Reads, creates and edits Word .docx files with python-docx, and drops to raw OOXML for tracked changes, comments and byte-exact edits.

    41k GitHub stars~2.5k tokensUpdated yesterday
    Documents & OfficeAuto-check passed

More from GAIK-project/gaik-toolkit

All 15 skills in this repo
  • Brief To Slides

    GAIK-project/gaik-toolkit

    Builds a visual, editable PowerPoint (.pptx) deck with speaker-ready notes, exact timing, citations and a layout-checked design from a topic, an audience and a length, using only the user's own…

    100 GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Gaik Toolkit

    GAIK-project/gaik-toolkit

    GAIK toolkit overview and reference. An agent skill from GAIK-project/gaik-toolkit.

    100 GitHub stars~5.7k tokensUpdated today
    Auto-check passed
  • Extracting Structured Data

    GAIK-project/gaik-toolkit

    Extracts structured data — fields, tables, line items — out of documents into a validated schema using the gaik toolkit, and designs schemas that stay inside provider limits and produce checkable…

    100 GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Parsing Documents

    GAIK-project/gaik-toolkit

    Converts PDFs, scans, and Word documents into text or markdown with the gaik toolkit's parsers, choosing the parser that will not silently destroy the structure the downstream task depends on.

    100 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Searching Documents

    GAIK-project/gaik-toolkit

    Builds and debugs retrieval with the gaik toolkit — PgVectorStore, Ranker, FinnishTextProcessor, RelevanceGate — as hybrid search: pgvector similarity plus Postgres full-text, fused by rank, and the…

    100 GitHub stars~4.2k tokensUpdated today
    Auto-check passed
  • Construction Diary Creation

    GAIK-project/gaik-toolkit

    Extracts structured data from Finnish construction site daily diary audio recordings (Työmaapäiväkirja) and creates a formatted Word document with extracted fields.

    100 GitHub stars~3.6k tokensUpdated today
    Auto-check passed

Questions about Gaik Sync

What does Gaik Sync do?

Audits the GAIK Solution Wizard's component registry, reference cards, and SKILL.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync. Gaik Sync is an agent skill from GAIK-project/gaik-toolkit.md guidance against the installed gaik package, then proposes and applies the updates needed to keep them in sync.

When should I use Gaik Sync?

Gaik Sync fits situations like: documents & Office work in your project.

How do I install Gaik Sync in Claude Code?

Run `npx skills add GAIK-project/gaik-toolkit --skill gaik-sync -a claude-code`. Or copy the skill folder (.claude/skills/gaik-sync in GAIK-project/gaik-toolkit) into .claude/skills/gaik-sync in your project. Claude Code loads it when a task matches its description.

How do I install Gaik Sync in Codex?

Run `npx skills add GAIK-project/gaik-toolkit --skill gaik-sync -a codex`. Or copy the skill folder (.claude/skills/gaik-sync in GAIK-project/gaik-toolkit) into .agents/skills/gaik-sync in your project. Codex loads it when a task matches its description.

Can I use Gaik Sync in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add GAIK-project/gaik-toolkit --skill gaik-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/gaik-sync, .gemini/skills/gaik-sync, .github/skills/gaik-sync and .opencode/skills/gaik-sync in your project.

What does Gaik Sync need to run?

Going by SKILL.md and its folder, Gaik Sync needs Python for the scripts in its folder and the command-line tools its instructions call (uv and git). Our summary lists: Python 3.

Does Gaik Sync access the network?

SKILL.md contains no URLs. Its commands use uv and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Gaik Sync safe to install?

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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Gaik Sync use?

Gaik Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gaik Sync use?

About 4k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Gaik Sync?

Skills that share tags, products or a category with Gaik Sync: Markdown Article Formatter (JimLiu/baoyu-skills, 26k stars), Markitdown (ImCa0/just-laws, 782 stars), Obsidian Markdown (Atmosphere/atmosphere, 3.8k stars) and DOCX (rvdbreemen/OTGW-firmware, 207 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gaik Sync?

GAIK-project (a GitHub organization) maintains it in GAIK-project/gaik-toolkit, which has 100 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on October 9, 2026.

Source: GAIK-project/gaik-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.