skill
Adom Wiki Skill Pack
Public Made by Adomby adom
The Adom Wiki Skill Pack : one main skill plus the focused sub-skills that teach the AI to publish to wiki.adom.inc without breaking pages, name the wiki repo archetypes (Page, Skillpack, Family), and publish rich component pages (chips, molecules, boards). The wiki is six tools in one: git, package manager, releases, discussions, pull requests, and discovery. One package manager install drops the whole set onto your container. Includes reviewed Z-up component artwork, surface-selected MPN marki
← Commit history
readme.html custom HTML mode shipped: document it in wiki-readme + wiki-component; add discovery metadata
4 files changed
+92−37
package.json+4−2@@ -1,9 +1,11 @@ { "slug": "adom-wiki-skillpack", "title": "Adom Wiki Skill Pack",- "version": "0.7.1",+ "version": "0.7.2", "type": "skill",- "hero": { "path": "screenshots/hero.png" },+ "hero": {+ "path": "screenshots/hero.png"+ }, "description": "The Adom Wiki Skill Pack \u2014 one main skill plus 14 focused sub-skills that teach the AI to publish to wiki.adom.inc without breaking pages, name the wiki repo archetypes (Page, Skillpack, Family), and publish rich component pages (chips, molecules, boards). The wiki is six tools in one: git, adompkg, releases, discussions, pull requests, and discovery. One adompkg install drops the whole set onto your container.", "discovery_triggers": [ "publish to the wiki",
page.json+27−3@@ -2,7 +2,7 @@ "type": "skill", "slug": "adom-wiki-skillpack", "title": "Adom Wiki Skill Pack",- "brief": "How to use the Adom Wiki without breaking pages — the wiki is six tools in one (git, adompkg, releases, discussions, PRs, discovery), and three repo archetypes have emerged from real use: Page, Skillpack, and Family. Plus how to publish rich component pages (chips, molecules, boards). One install, 15 skills, plus a write-up of the design patterns for the people who build the wiki.",+ "brief": "How to use the Adom Wiki without breaking pages \u2014 the wiki is six tools in one (git, adompkg, releases, discussions, PRs, discovery), and three repo archetypes have emerged from real use: Page, Skillpack, and Family. Plus how to publish rich component pages (chips, molecules, boards). One install, 15 skills, plus a write-up of the design patterns for the people who build the wiki.", "hero": { "type": "image", "path": "screenshots/hero.png"@@ -42,5 +42,29 @@ "wiki scoring", "wiki trending" ]- }-}+ },+ "discovery_triggers": [+ "how does the wiki work",+ "publish to the wiki",+ "what kind of wiki repo should this be",+ "make a wiki page for this",+ "custom html readme on the wiki",+ "publish a chip page",+ "wiki skillpack"+ ],+ "discovery_pitch": "The entry point for working with the Adom Wiki: 15 focused skills covering repo archetypes, publishing safely, READMEs (markdown and custom readme.html), heroes, components, families, and discovery.",+ "sample_prompts": [+ {+ "label": "Pick a repo style",+ "prompt": "What kind of wiki repo should I make for this project, a page, a skillpack, or a family?"+ },+ {+ "label": "Custom HTML readme",+ "prompt": "I want a fully designed custom HTML readme on my wiki page instead of sanitized markdown. How do I do that?"+ },+ {+ "label": "Publish a chip page",+ "prompt": "Publish this chip as a component page on the wiki with symbol, footprint, and 3D viewers."+ }+ ]+}
skills/wiki-component/SKILL.md+23−19@@ -96,12 +96,20 @@ images + tables that complement the native viewers — not for a custom app shel **To get the full custom layout** (tabs, accordions, panels, the Open-in toolbar, provenance lightbox) you have two options:-1. **Prototype it as a standalone page in the container** (the working path today):- one self-contained HTML file, **base64-inline the fonts + images**, inline CSS +- JS, embed the live `/viewer/...` iframes, then serve it with+1. **Ship a `readme.html`** (LIVE — verified 2026-07-15): put a self-contained+ `readme.html` in the publish tree and `pkg publish`. The wiki renders it as the+ page body in a sandboxed iframe (`sandbox="allow-scripts allow-downloads"`,+ served unsanitized from `/readme/<owner>/<type>/<slug>?variant=public`) —+ inline CSS AND `<script>` both work, so the full tabbed/accordion/toolbar/+ lightbox layout is the real page now. It fully shadows README.md on the page.+ No `allow-same-origin`: self-contain everything (base64-inline fonts/images or+ absolute `/blob/...` URLs; no wiki API calls from inside). See **wiki-readme**.+2. **Prototype it as a standalone page in the container** (for iterating before+ publishing): one self-contained HTML file, **base64-inline the fonts + images**,+ inline CSS + JS, embed the live `/viewer/...` iframes, then serve it with `python3 -m http.server <port>` and hand the user the proxy URL- `https://<slug>.adom.cloud/proxy/<port>/`. This is how you show the design and- iterate before the platform can host it.+ `https://<slug>.adom.cloud/proxy/<port>/`. The same file, once it looks right,+ drops in as `readme.html` unchanged. > **A reference data-driven generator ships with this skill** at > `component-page-generator/gen_chip.py` (+ `template.html`). Point it at a@@ -114,13 +122,8 @@ provenance lightbox) you have two options: > with `pdftoppm`/ImageMagick into a click-to-enlarge lightbox), and enforces the > Adom-UI rules (tokens, brand fonts, monochrome icons, NO emoji / em-dashes, > 44px header, tooltips). Validated across 6 classes; adapt the absolute paths.- > Use it as the blueprint for either a standalone preview or the future- > custom-HTML page.-2. **The platform build ask** (below): a custom-HTML page mode so the repo's- `readme.html` renders as the page body in a sandboxed iframe (`srcdoc`,- `allow-scripts`, assets served with real content-types) instead of sanitized- markdown. Until that ships, the live page = native rendering (Layer A) + a README;- the full custom design = the standalone prototype.+ > Use it as the blueprint for either a standalone preview or the shipped+ > custom-HTML `readme.html` page. --- @@ -303,10 +306,11 @@ downloads + BOM + assembly notes. Page archetype. ## 📋 Platform TODO (for Colby / adom-desktop) — fold these into build asks -- **Custom-HTML page mode**: render a repo `readme.html` as the page body in a- sandboxed iframe (`srcdoc`, `allow-scripts`, sibling assets served with real- content-types, not octet-stream) **instead of** sanitized markdown — so the full- tabbed/accordion/toolbar/provenance layout becomes the real page.+- ~~**Custom-HTML page mode**~~ **SHIPPED** (verified 2026-07-15): a repo+ `readme.html` renders as the page body in a sandboxed iframe+ (`allow-scripts allow-downloads`, unsanitized) — see **wiki-readme**. Remaining+ gap: no `allow-same-origin`, so embedded viewers can't fetch the wiki API from+ inside the readme (next item). - **Editable embedded viewers**: let the embedded SymView/FpView tweak + regenerate in place (needs same-origin fetch in the page sandbox). - **page→desktop bridge** (`window.adomDesktop` / `adom://` / local endpoint) +@@ -319,6 +323,6 @@ downloads + BOM + assembly notes. Page archetype. - **chip-fetcher**: don't save a product brief as the datasheet — verify the PDF has the pinout (so ds2sf can extract). -> ⏳ This skill records the live constraints as of its writing (README is sanitized;-> no page→desktop bridge; standalone-preview is the way to show a custom layout).-> Re-verify and update when the custom-HTML page mode + bridge ship.+> ⏳ This skill records the live constraints as of its writing (README.md is+> sanitized, but `readme.html` custom pages SHIPPED — verified 2026-07-15; still+> no page→desktop bridge). Re-verify and update when the bridge ships.
skills/wiki-readme/SKILL.md+38−13@@ -21,29 +21,54 @@ Parent skill: **adom-wiki-skillpack** # How to make a README (the presentation layer) On the Adom Wiki the **README is the page** — the Overview tab is the first thing-a human sees, and it's what sells the page in search and on cards. It is rendered-from `README.md` through `marked` **then sanitized**, so what you can build is-limited (below).+a human sees, and it's what sells the page in search and on cards. There are TWO+presentation modes: -## What HTML survives (the sanitizer reality — verified in the wiki source)+1. **`README.md`** (the default) — rendered through `marked` **then sanitized**,+ so what you can build is limited (below).+2. **`readme.html`** (custom HTML mode, LIVE — verified end to end 2026-07-15) —+ your HTML renders as the page body in a **sandboxed iframe**, completely+ unsanitized: inline `<style>` AND `<script>` both work. -The rendered README is run through `sanitize-html` with a **strict allowlist**. It-**strips `<style>`, `<script>`, `<details>`/`<summary>`, `<iframe>`, and even+## Custom HTML mode: readme.html (full designed layouts)++Ship a `readme.html` in the publish tree and `pkg publish`. That's it.++- **It shadows README.md entirely.** The publish linter says so:+ `README_SHADOWED: readme.html is what renders on the page, so edits to+ README.md will not be visible.` Keep a README.md for the Files tab and git+ readers, but know the page ignores it.+- **How it renders:** the Overview tab embeds+ `https://wiki.adom.inc/readme/<owner>/<type>/<slug>?variant=public` in an+ iframe with `sandbox="allow-scripts allow-downloads"` (no `allow-same-origin`).+ The endpoint serves your HTML byte-for-byte — no sanitizer. Styles apply,+ scripts run (verified live: styled tabs rendered, a `<script>` mutated the DOM).+- **Sandbox limits:** no same-origin access (no cookies, no wiki API calls from+ the readme), no top-navigation. Self-contain everything: inline CSS/JS,+ base64-inline fonts and images or use absolute `/blob/...` URLs.+- **Variants:** the page tracks six readme slots in `readme_variants_json` —+ `bareHtml`/`bareMd`, `publicHtml`/`publicMd`, `privateHtml`/`privateMd` — so+ the html-vs-md choice composes with the public/private readme split+ (see **wiki-visibility**). A plain `readme.html` registers as `bareHtml`.+- Tabs, accordions, toolbars, provenance lightboxes — all buildable here. This+ is the mode the old "standalone prototype in the container" workaround was+ waiting for; prototype straight in `readme.html` now.++## Markdown mode: what HTML survives (the sanitizer reality)++The rendered README.md is run through `sanitize-html` with a **strict allowlist**.+It **strips `<style>`, `<script>`, `<details>`/`<summary>`, `<iframe>`, and even `style=` attributes.** Surviving tags: `h1-6, p, a, ul/ol/li, blockquote, pre, code, em, strong, del, ins, sub, sup, kbd, hr, br, img, table/thead/tbody/tr/th/td, span, div, input` (task lists), with `class` on a few and `href/src/alt/width/ height/align`. **Consequence: you cannot build a tabbed / accordion / toolbar-"custom HTML layout" in the README** — inline styles vanish, `<details>` collapse,+"custom HTML layout" in README.md** — inline styles vanish, `<details>` collapse, scripts never run. (Confirmed live: a hand-styled toolbar rendered as plain links.) -So the README is for **prose + images + tables**. For anything richer:+So README.md is for **prose + images + tables**. For anything richer:+- **Switch to `readme.html`** (above) for a fully designed layout. - **Component pages** get rich interactive UI from the wiki's **native rendering** (symbol/footprint/3D viewers, downloads grid) — see **wiki-component**, not the README.-- A **fully custom HTML layout** (the "readme.html" dream) is **not a live feature- today** — it needs the platform's custom-HTML-page mode (sandboxed `srcdoc`- iframe). Until then, prototype custom layouts as a **standalone served page in the- container** (`python3 -m http.server` + the proxy URL), base64-inlining fonts/- images. See **wiki-component** for the pattern. There is also a **private readme** for pages whose git source is private but whose releases are public — see **wiki-visibility**.