knihovnik — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited knihovnik (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Inspirováno Knowledge OS Blueprint. Klíčová idea: compound effect — každý nový zdroj nejen přidává, ale i obohacuje existující znalosti přes auto-linking a concept pages.
KNIHOVNIK_DIR/
├── data/
│ ├── sources.json # hlavní DB všech zdrojů + connections
│ └── tags.json # vocabulary s aliasy
├── inbox/ # rychlé zachycení (nezpracované)
├── content/
│ ├── articles/ # externí články
│ ├── videos/ # YT videa s přepisem
│ ├── books/ # výpisky z knih
│ ├── insights/ # vlastní pozorování (1 myšlenka = 1 soubor)
│ ├── concepts/ # evolving wiki stránky (compound)
│ └── my-notes/ # delší vlastní texty, sbírky
└── zdroje/ # raw zdroje (HTML, PDF, ENEX)KNIHOVNIK_DIR = /Users/josefmech/Library/CloudStorage/[email protected]/Můj disk/1_vibe/ja/knihovnik
| Typ | Složka | Účel | Příklad |
|---|---|---|---|
article | articles/ | Externí článek | Deník N komentář |
video | videos/ | YT video s přepisem | Lex Fridman podcast |
book | books/ | Výpisky z knihy | Alchymie |
insight | insights/ | Vlastní myšlenka, jedna ucelená realizace | "Zákazy ničí důvěru" |
concept | concepts/ | Evolving wiki stránka, syntéza více zdrojů | "Děti a sociální sítě" |
note | my-notes/ | Delší vlastní text, sbírka | Citáty |
fragment | inbox/ | Nezpracovaný zachycený obsah | Surová URL |
/knihovnik save <url-nebo-text> — Uložení s plným zpracovánímsources.json a tags.jsonWebFetch (pokud paywall, zkontroluj zdroje/ jestli tam není stažený HTML)tags.json)/knihovnik inbox <text-nebo-url> — Rychlé zachyceníPro situace kdy nemáš čas to zpracovat. Jen to hodím tam.
inbox/YYYY-MM-DD-HHMMSS-slug.md s minimální strukturou: ---
captured: "2026-04-07 14:30"
raw: "https://..."
---
<volný text/poznámka uživatele>/knihovnik process — Zpracování inboxuProjde všechny soubory v inbox/, jeden po druhém:
/knihovnik save (s předvyplněnými hodnotami)/knihovnik insight <text> — Vlastní pozorováníPro jednu ucelenou myšlenku/realizaci.
content/insights/YYYY-MM-DD-slug.md: ---
id: "2026-04-07-001"
type: insight
title: "Krátký výstižný titulek"
date: "2026-04-07"
tags: ["#tag1", "#tag2"]
is_mine: true
links: []
---
# Titulek
## Pozorování
<hlavní myšlenka>
## Kontext
<co k tomu vedlo>
## Co z toho plyne
<důsledek, akce>/knihovnik note <text> — Vlastní delší poznámka / sbírkaPro delší texty, sbírky, blogposty (jako sbírka citátů). Stejné jako insight, ale jde do content/my-notes/.
/knihovnik book <název> — Výpisky z knihycontent/books/YYYY-MM-DD-slug.mdis_mine: false/knihovnik concept <téma> — Vytvoření / aktualizace concept pageManuální vytvoření concept page (jinak skill navrhne auto).
sources.json související s tématem (přes tagy + fulltext)content/concepts/topic-slug.md: ---
id: "concept-001"
type: concept
title: "Téma"
tags: ["#tag1", "#tag2"]
sources:
- "content/articles/2026-04-02-xyz.md"
- "content/insights/2026-04-03-abc.md"
related:
- "content/concepts/jine-tema.md"
last_updated: "2026-04-07"
---
# Téma
## Klíčové myšlenky
<syntéza ze všech sources>
## Vlastní pohled
<co si o tom myslím>
## Sources
- [Titul 1](path) — co přináší
- [Titul 2](path) — co přinášísources.json (přidej concept jako entry s linky na sources)/knihovnik search <dotaz> — Hledánísources.json#)Grep)/knihovnik list [#tag] [typ] — Výpis zdrojůFiltruj dle štítku/typu, seřaď od nejnovějšího.
/knihovnik tags — Výpis štítkůZobraz štítky s počtem zdrojů, varuj na aliasy.
/knihovnik open <id> — Detail zdrojeZobraz frontmatter + obsah + propojené zdroje (links).
/knihovnik connections <id> — Graf vazebZobraz:
/knihovnik edit <id> — Editace zdrojeNajdi, zobraz, uprav dle pokynů uživatele, aktualizuj content + sources.json.
/knihovnik bundle <téma> — Sbalí téma do jednoho .mdPro export do NotebookLM, přípravu blogpostu, nebo jen pro souhrn co všechno k tématu mám.
sources.json související s tématem (přes tagy + fulltext + concept page)content/bundles/YYYY-MM-DD-tema-slug.md: ---
bundle_topic: "Téma"
generated: "2026-04-07"
sources_count: 8
tags: ["#tag1", "#tag2"]
---
# Bundle: Téma
> Vygenerováno z N zdrojů Knihovníka pro NotebookLM / blogpost / přípravu.
## Concept page (pokud existuje)
<plný obsah concept page>
---
## Zdroj 1: <titulek>
**Autor:** ... | **Datum:** ... | **Typ:** article
**Tagy:** #tag1 #tag2
**Shrnutí:** ...
<plný obsah content souboru>
---
## Zdroj 2: .../knihovnik health — Kontrola zdraví KBZkontroluj:
linksVrať report s návrhy na opravu.
Při ukládání nového zdroje skill automaticky najde 2-3 nejvíc související existující zdroje:
Vyber top 2-3 a:
links: [] v novém content souborulinks: [] těch existujících (v jejich content souborech i v sources.json)Při každém save příkazu:
sources: arraylast_updated:related:Příklad compound update:
Nový článek "AI v marketingu" →
- Vytvoří entry v library/
- Updates concepts/ai-marketing.md (přidá data)
- Updates concepts/marketing-trends.md (cross-reference)Práh 3 = dostatečný signál pro syntézu bez předčasné abstrakce.
Při /knihovnik save <youtube-url> se automaticky stáhne audio a přepíše přes lokální Whisper.
yt-dlp (nainstalováno přes brew)whisper (lokální, model large-v3)ffprobe / ffmpeg yt-dlp --print title --print channel --print upload_date --print description --skip-download "<url>" yt-dlp -x --audio-format mp3 --audio-quality 0 -o "/tmp/knihovnik-yt-%(id)s.%(ext)s" "<url>" ffprobe -v error -show_entries format=duration -of csv=p=0 "/tmp/knihovnik-yt-VIDEOID.mp3" whisper "/tmp/knihovnik-yt-VIDEOID.mp3" --model large-v3 --language cs --output_format txt --output_dir /tmp/whspr skill) — odstraň hezitační zvuky, opakování, rozděl do odstavců s mezititulkycontent/videos/YYYY-MM-DD-slug.md/tmprun_in_backgroundyt-dlp selže, informuj uživatele#e-commerce, #leadershiptags.jsontags.json: {
"name": "#leadership",
"description": "Vedení lidí, management",
"aliases": ["#management", "#vedeni"],
"category": "byznys",
"count": 5
}Když Curator navrhne nebo dostane od uživatele štítek:
tags.json jako name? → použij hoaliases poli? → přepiš na canonical name a informuj uživatele:"Štítek#managementje alias na#leadership, používám#leadership"
#startup → mohl by být alias na #podnikani)tags.json s description, category, count: 1Při /knihovnik health zkontroluj:
sources.json které nejsou v tags.json (neregistrované)aliases ale stále se používají v sources (mělo by se přepsat)count: 0 (nevyužité, kandidát na smazání)is_mine: false): vždy Autor — [Název](URL) (datum)>){
"id": "2026-04-07-001",
"type": "article",
"title": "Název",
"url": "https://...",
"author": "Jméno",
"date_saved": "2026-04-07",
"date_published": "2024-01-15",
"tags": ["#tag1", "#tag2"],
"is_mine": false,
"content_file": "content/articles/2026-04-07-nazev.md",
"summary": "Krátké shrnutí 2-3 věty.",
"links": ["2026-04-02-003", "concept-deti-online"]
}Trigger: Když uživatel řekne „hotovo / done / shrň session / co jsme vlastně udělali" — nebo na konci podstatné konverzace.
Skill vyhodnotí:
concepts/) — pokud session prohloubila pochopení tématu, ke kterému už něco mámeinsights/) — pokud session odhalila novou realizaci#decision)„Tato session přinesla X. Uložit jako [concept/insight]?"
/knihovnik insight nebo /knihovnik concept workflowV markdownu uvnitř content souborů používej Obsidian-friendly syntax:
Tahle myšlenka navazuje na [[2026-04-02-001|Alchymii]] a [[2026-04-02-002|Navala]].
Související koncept: [[concept-podnikatelsky-mindset]]Pravidla:
[[id]] — link na zdroj/concept podle ID[[id|alias]] — link s vlastním textem[[concept-podnikatelsky-mindset]]sources.json a tags.json PŘED zápisemYYYY-MM-DD-NNN (datum + pořadí)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.