Flint

Local-first · Skills manager & skills hub for AI agents

Gather your scattered skills,knap them into sharp tools

Flint is a local-first skills manager and skills hub: it centralizes the skills scattered across all of your agents and projects — unified tagging, search and filtering, deduplication, then deployment into each agent's and project's own skills directory. Your skills exist only as plain files on your local disk. They are yours.

Knap

Gather scattered skills, deduplicate, tag, and strike them into precise, handy tools.

Spark

Deploy and distribute skills into agent and project directories so they are truly ignited and start doing work.

Core philosophy

Manage your skills the way Obsidian manages knowledge

Obsidian summarises its beliefs in three sentences. Flint carries them over to skill management, one by one — only the object, knowledge vs skills, changes.

01

Local and private

Skills exist only as plain files on your local disk — no cloud, no account, no telemetry.

02

Open formats, never locked in

A skill's body is just a SKILL.md directory on disk — open, edit, diff, and commit it with git at any time; switch tools or ecosystems and the asset comes with you.

03

Sharpen your skills

Collect, deduplicate, tag, then deploy in one click to the agents and projects that need it — so your personal skill library gets handier as it grows.

Six modules

A main path of collect → organise → deploy

Six modules, each with one job. The first four form the main path; Health and Settings are the safety net.

Library

01

Browse, search and filter all skills; preview SKILL.md, edit tags, trace provenance; register own and third-party repositories, import from any directory.

Agents

02

One card per actual skills directory. Set active, override directories, sync, link a preset, toggle skills, even switch symlink vs copy per skill.

Presets

03

A skill bundle — explicit members union skills matched by linked tags. Membership or tag changes deploy to active agents immediately.

Projects

04

Register a path + tags and the desired set derives automatically; bodies are copied into .agents (git-committable), with collect / takeover / push-back.

Health

05

A 6-dimension checkup — sync, duplicates, broken links, config, repositories, projects — with one-click fixes (confirm before running).

Settings

06

Default install mode (symlink / copy), optional copy watcher, custom agents, and log viewing.

Why you need it

The stronger the model, the less your skills can afford to be scattered

Many say 'models got stronger, skills are useless'. True and false: generic skills that patch model gaps do get absorbed, but the 'medium-reusability' things always remain — your workflow, your company's knowledge, your cookie-bearing browser. Models can't learn these on their own.

The boundary of reusability

Truly universal skills get absorbed into the model; what deserves to be captured is the part only you (or your team) know. That belongs in your toolkit, not in the language defaults.

The cost of switching agents

A daily-report skill written in agent A today is unusable in agent B tomorrow. npx reaches existing agents, but becomes a burden the moment you adopt a new one — or want to manage your own skills.

Token and retrieval overhead

Installing hundreds of skills wholesale means tens of thousands of fixed tokens per conversation, and raises the odds the model picks the wrong skill or misses one. Precise management is what saves money and picks true.

Four steps

Your first run, in four steps

Requires Node.js ≥ 20. One script starts the local frontend and backend.

  1. 1

    Install

    Run ./start.sh from the repo root (or npx flint-skills-hub). The script checks the environment, installs dependencies, and opens the browser.

  2. 2

    Register a repository

    A repository is the collection / source of truth for skills. Own repositories are maintained normally; third-party ones are read-only sources you can import from.

  3. 3

    Create a preset

    A preset is a skill bundle — explicit members union skills matched by linked tags.

  4. 4

    Apply it to an agent

    Set the agent as active and link the preset. From then on, membership or tag changes reach linked active agents immediately.

Let every piece of flint strike a spark

The project is open source. Clone it, run ./start.sh, and it works. Try it out, open issues, and give it a star.

This post explains Flint's origin, philosophy, and minimal path — written for everyone who has started to take their skill library seriously.