@diegopetrucci/pi-extensions 0.1.43 → 0.1.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/README.md +2 -1
  2. package/extensions/illustrations-to-explain-things/.pi-fleet-tested-version +1 -0
  3. package/extensions/illustrations-to-explain-things/README.md +52 -0
  4. package/extensions/illustrations-to-explain-things/package.json +31 -0
  5. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/SKILL.md +112 -0
  6. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/agents/openai.yaml +6 -0
  7. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/01-two-breakpoints.png +0 -0
  8. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/02-minimum-loop.png +0 -0
  9. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/03-sort-by-purpose.png +0 -0
  10. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/04-one-fish-many-uses.png +0 -0
  11. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/05-handoff-path.png +0 -0
  12. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/06-three-sources.png +0 -0
  13. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/07-three-content-jobs.png +0 -0
  14. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/08-handoff-copy-toolbox.png +0 -0
  15. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/09-common-pits-no-title.png +0 -0
  16. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/10-information-well.png +0 -0
  17. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/11-idea-press.png +0 -0
  18. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/12-content-fermentation.png +0 -0
  19. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/13-system-bearing.png +0 -0
  20. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/assets/examples/14-trust-bridge.png +0 -0
  21. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/references/composition-patterns.md +91 -0
  22. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/references/prompt-template.md +51 -0
  23. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/references/qa-checklist.md +48 -0
  24. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/references/style-dna.md +49 -0
  25. package/extensions/illustrations-to-explain-things/skills/illustrations-to-explain-things/references/xiaohei-ip.md +53 -0
  26. package/package.json +6 -3
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # pi-extensions
2
2
 
3
- A collection of [pi](https://github.com/earendil-works/pi-mono) agent extensions I made.
3
+ A collection of [pi](https://github.com/earendil-works/pi-mono) agent extensions and skills I made.
4
4
 
5
5
  - [`agent-workflow-audit`](./extensions/agent-workflow-audit): Adds `/agent-workflow-audit`, which runs an isolated repo workflow audit subagent and returns only the final distilled report to the main session.
6
6
  - [`annotate-git-diff`](./extensions/annotate-git-diff): Adds `/annotate-git-diff`, a native Glimpse UI for annotating git diffs and appending structured feedback prompts to the editor.
@@ -14,6 +14,7 @@ A collection of [pi](https://github.com/earendil-works/pi-mono) agent extensions
14
14
  - [`git-footer`](./extensions/git-footer): Standalone extension that adds TLH-style git dirty counts, ahead/behind, and optional PR number to pi's built-in footer status area.
15
15
  - [`gnosis`](./extensions/gnosis): Exposes the `gn` repo-local knowledge base CLI as an agent tool for searching and recording durable project decisions, constraints, and intent.
16
16
  - [`inline-bash`](./extensions/inline-bash): Expands `!{command}` snippets in user prompts by running them through bash before the prompt reaches the agent.
17
+ - [`illustrations-to-explain-things`](./extensions/illustrations-to-explain-things): Adds a skill for generating clean, absurd Xiaohei-style article illustrations, shot lists, image edits, and visual metaphors.
17
18
  - [`librarian`](./extensions/librarian): Adds a GitHub research scout with a local repo checkout cache disabled by default under the OS user cache directory, toggleable with `/librarian-cache`, configurable subagent model/thinking defaults via `/librarian-config`, and cached repos expiring after 7 days of non-use.
18
19
  - [`minimal-footer`](./extensions/minimal-footer): Replaces pi's built-in footer with a minimal configurable two-line layout: branch/repo on the first line, context/model on the second, optional `DUMB ZONE`, plus OpenAI Codex 5-hour and 7-day usage when available.
19
20
  - [`notify`](./extensions/notify): Sends configurable terminal, desktop, bell, and sound notifications when pi finishes and is ready for input.
@@ -0,0 +1,52 @@
1
+ # illustrations-to-explain-things
2
+
3
+ A pi skill for generating clean, absurd Xiaohei-style article illustrations, shot lists, image edits, and visual metaphors.
4
+
5
+ The skill helps the agent turn one key judgment, process, structure, state, or metaphor from source material into a sparse 16:9 hand-drawn explainer image with Xiaohei as the causal actor.
6
+
7
+ ## Use cases
8
+
9
+ - Article and blog-post inline illustrations
10
+ - Shot lists for longer essays or Notion pages
11
+ - Visual metaphors for workflows, methods, structures, and states
12
+ - Focused image-generation prompts with style and QA constraints
13
+
14
+ ## Install
15
+
16
+ ### Standalone npm package
17
+
18
+ ```bash
19
+ pi install npm:@diegopetrucci/pi-illustrations-to-explain-things
20
+ ```
21
+
22
+ ### Collection package
23
+
24
+ ```bash
25
+ pi install npm:@diegopetrucci/pi-extensions
26
+ ```
27
+
28
+ ### GitHub package
29
+
30
+ ```bash
31
+ pi install git:github.com/diegopetrucci/pi-extensions
32
+ ```
33
+
34
+ Then reload pi:
35
+
36
+ ```text
37
+ /reload
38
+ ```
39
+
40
+ ## Usage
41
+
42
+ Ask pi for article illustrations or use the skill command directly:
43
+
44
+ ```text
45
+ /illustrations-to-explain-things propose a shot list for @article.md
46
+ ```
47
+
48
+ ```text
49
+ Generate three Xiaohei-style illustrations for this workflow: ...
50
+ ```
51
+
52
+ By default, response text, shot lists, and handwritten image labels are in English unless you explicitly ask for another language.
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "@diegopetrucci/pi-illustrations-to-explain-things",
3
+ "version": "0.1.0",
4
+ "description": "A pi skill for generating clean, absurd Xiaohei-style article illustrations, shot lists, and visual metaphors.",
5
+ "keywords": [
6
+ "pi-package",
7
+ "pi",
8
+ "skill",
9
+ "illustration",
10
+ "image-generation"
11
+ ],
12
+ "license": "MIT",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/diegopetrucci/pi-extensions.git",
16
+ "directory": "extensions/illustrations-to-explain-things"
17
+ },
18
+ "files": [
19
+ "skills",
20
+ "README.md",
21
+ ".pi-fleet-tested-version"
22
+ ],
23
+ "publishConfig": {
24
+ "access": "public"
25
+ },
26
+ "pi": {
27
+ "skills": [
28
+ "skills"
29
+ ]
30
+ }
31
+ }
@@ -0,0 +1,112 @@
1
+ ---
2
+ name: illustrations-to-explain-things
3
+ description: Generate clean, absurd article illustrations in Ian's Xiaohei style. Use this skill when the user wants inline illustrations, shot lists, image edits, or visual metaphors for articles, blog posts, Notion pages, workflows, methods, structures, states, or key ideas. Default all response text and handwritten image labels to English unless the user explicitly requests another language.
4
+ ---
5
+
6
+ # Illustrations to Explain Things
7
+
8
+ ## Core positioning
9
+
10
+ Design and generate 16:9 landscape article illustrations. The goal is not commercial illustration, formal PPT infographics, or cute cartoon art. The goal is to turn one key judgment, process, structure, state, or metaphor from the source material into a clean, strange, memorable hand-drawn explainer image.
11
+
12
+ The default recurring character is Xiaohei: a small solid-black figure with white dot eyes, tiny legs, and a blank serious expression, doing something absurd but functional. Xiaohei must perform the core action in the image rather than standing off to the side as decoration.
13
+
14
+ ## Default language policy
15
+
16
+ - Default to **English** for response text, shot lists, and handwritten image labels.
17
+ - Switch to another language only if the user explicitly asks for it.
18
+ - If the user requests another language, keep that language consistent across both the written response and the image labels.
19
+
20
+ ## Read these references as needed
21
+
22
+ Load only what is relevant to the current task instead of stuffing all references into context:
23
+
24
+ - `references/style-dna.md`: style DNA, color rules, label rules, and anti-patterns.
25
+ - `references/xiaohei-ip.md`: Xiaohei character design, personality, action library, and prohibitions.
26
+ - `references/composition-patterns.md`: structure types, metaphor-invention method, and anti-copy rules.
27
+ - `references/prompt-template.md`: single-image generation prompt template.
28
+ - `references/qa-checklist.md`: post-generation review and iteration rules.
29
+ - `assets/examples/`: low-frequency visual calibration only. Do not copy these example compositions, objects, or labels.
30
+
31
+ ## Workflow
32
+
33
+ ### 1. Digest the source material
34
+
35
+ Read the article, link, Notion page, Markdown file, screenshot, or topic the user provided. Extract:
36
+
37
+ - the core claim
38
+ - the paragraphs that carry the cognitive turning points
39
+ - the ideas that truly benefit from illustration
40
+ - the parts that should stay as text and do not need images
41
+
42
+ Do not distribute illustrations evenly. Prefer cognitive anchors such as core judgments, breakpoints, input/output loops, splits, before/after contrasts, one-input-many-outputs patterns, handoff paths, common traps, or role-state changes.
43
+
44
+ ### 2. Propose the illustration strategy first
45
+
46
+ If the user asks how to illustrate the piece, think through it first and output a shot list. For each image, specify:
47
+
48
+ - where it should appear
49
+ - the theme
50
+ - the core idea
51
+ - the structure type
52
+ - what Xiaohei is doing
53
+ - suggested elements
54
+ - suggested handwritten labels in English
55
+
56
+ Default to 4-8 images. For very short pieces, 1-3 may be enough. Even for long pieces, avoid going past 9 unless the user clearly needs more.
57
+
58
+ ### 3. Generate single images
59
+
60
+ If the user clearly asks you to generate, output, or make images, do not pause for confirmation. Use the built-in `image_gen` tool and generate each image separately. Do not combine multiple concepts into one image.
61
+
62
+ Each image should express only one core structure. The prompt must include:
63
+
64
+ - 16:9 landscape article illustration
65
+ - pure white background
66
+ - black hand-drawn line art
67
+ - sparse red/orange/blue handwritten labels, in English by default
68
+ - lots of whitespace
69
+ - Xiaohei as the actor performing the core conceptual action
70
+ - prohibitions against PPT slides, commercial illustration, childish/cute styling, dense architecture diagrams, and top-left type titles
71
+
72
+ Do not copy older example compositions. Examples are only for line density, whitespace, restraint, and Xiaohei participation. Unless the user explicitly asks to imitate a specific example, invent a fresh metaphor for the current article.
73
+
74
+ ### 4. Review and iterate
75
+
76
+ After generation, check the result against `references/qa-checklist.md`. If you see any of the following, regenerate or make a focused edit:
77
+
78
+ - Xiaohei is decorative instead of causal
79
+ - the canvas feels too full
80
+ - the result looks like a flowchart or PPT slide
81
+ - labels are too long or contain obvious errors
82
+ - the image has a top-left title such as "Workflow" or "Common traps"
83
+ - the style drifts into cute, childish, or stiff
84
+ - the background is not clean white
85
+
86
+ ### 5. Save and deliver
87
+
88
+ If the user is working inside a writable workspace, copy the final images to:
89
+
90
+ ```text
91
+ assets/<article-slug>-illustrations/
92
+ ```
93
+
94
+ Name them in order:
95
+
96
+ ```text
97
+ 01-topic-name.png
98
+ 02-topic-name.png
99
+ ```
100
+
101
+ Keep original generated files rather than overwriting existing assets, unless the user explicitly asks to replace them.
102
+
103
+ ## Delivery style
104
+
105
+ Keep planning outputs short and precise. After generating images, report:
106
+
107
+ - how many images were generated
108
+ - what each image is for
109
+ - where the files were saved
110
+ - which results are strongest and which are optional
111
+
112
+ Do not spend paragraphs explaining the style theory. Let the images do the work.
@@ -0,0 +1,6 @@
1
+ interface:
2
+ display_name: "Illustrations to Explain Things"
3
+ short_description: "Create clean, absurd article illustrations with Xiaohei. Default output language: English unless the user explicitly requests another language."
4
+ default_prompt: "Use $illustrations-to-explain-things to plan and generate article illustrations for this piece. Default all response text and handwritten image labels to English unless I explicitly request another language."
5
+ policy:
6
+ allow_implicit_invocation: true
@@ -0,0 +1,91 @@
1
+ # Composition Patterns and Originality Rules
2
+
3
+ ## Base structure types
4
+
5
+ Pick one structure type per image. Do not mix too many.
6
+
7
+ ### Workflow
8
+
9
+ Best for: input -> process -> output, content production, AI workflows, automation chains.
10
+
11
+ Typical composition: input on the left, Xiaohei or a strange machine doing the work in the middle, output on the right, with orange arrows showing the main flow.
12
+
13
+ ### System slice
14
+
15
+ Best for: information sources, filters, databases, renderers, or one local slice of an agent system.
16
+
17
+ Typical composition: show only 3-5 core modules, and make Xiaohei participate in one key action.
18
+
19
+ ### Before / after
20
+
21
+ Best for: chaos vs. order, manual vs. automated, scattered vs. consolidated, anxious vs. stable.
22
+
23
+ Typical composition: messy left side, stable right side, orange arrow in the middle. The character can be more exaggerated here.
24
+
25
+ ### Role state
26
+
27
+ Best for: user pain points, creator state, tool overload, information anxiety, stuck-to-moving transitions.
28
+
29
+ Typical composition: 2-4 mini states, each with one short label.
30
+
31
+ ### Concept metaphor
32
+
33
+ Best for: content factory, information warehouse, black-box thinking, workflow machine, auto-reporting.
34
+
35
+ Typical composition: one large strange object or machine, a small amount of input, and one output. It should be memorable.
36
+
37
+ ### Method layers
38
+
39
+ Best for: methodology frameworks, system layers, capability stacks, layered content systems.
40
+
41
+ Typical composition: stacked boxes or levels, but not a formal pyramid. Xiaohei can be building, carrying, or fitting parts into place.
42
+
43
+ ### Route map
44
+
45
+ Best for: idea-to-launch journeys, user paths, content handoff paths, learning routes.
46
+
47
+ Typical composition: one curved route with a few nodes. Xiaohei can be pulling the line or walking the path.
48
+
49
+ ### Comic beats
50
+
51
+ Best for: failure-to-success arcs, real process snapshots, commentary, before/after usage shifts.
52
+
53
+ Typical composition: 2-4 mini scenes, with one action per panel.
54
+
55
+ ## How to invent a fresh metaphor
56
+
57
+ Reinvent the metaphor from the current article every time. Do not reuse old image logic by default.
58
+
59
+ ### Three-step method
60
+
61
+ 1. Convert the abstract idea into a physical action: getting stuck, leaking, getting heavier, sorting, settling, fermenting, opening, folding, unpacking, looping back.
62
+ 2. Convert the system structure into a low-tech object: a broken machine, cardboard boxes, drawers, pipes, mail slots, a weird dial, a scale, a well, a ladder, a strange workstation.
63
+ 3. Make Xiaohei perform the action: not standing nearby, but wedged inside the machine, pulling the wrong wire, guarding a gate, carrying parts, patching a leak, weighing something, holding a ladder, recording a result, or feeding material into a strange device.
64
+
65
+ ### Object pool
66
+
67
+ - cardboard box, drawer, old machine, funnel, scale, mailbox, door, well, ladder, pipe, cable knot, gate, turntable, black box, puncher, press, clothesline, strange workstation
68
+ - choose only 1-2 at a time rather than piling them up
69
+
70
+ ### Xiaohei action pool
71
+
72
+ - pull, carry, stuff, scoop, press, weigh, stitch, cut, twist, guard, push, catch, unpack, mark, recycle
73
+ - the action should serve the core idea instead of being strange for its own sake
74
+
75
+ ## Anti-copy rules
76
+
77
+ Do not automatically open or imitate `assets/examples/`. Those images are only for style calibration such as line density, whitespace, color restraint, and Xiaohei attitude.
78
+
79
+ Unless the user explicitly says "copy this one," "recreate this composition," or "edit this example," do not directly reuse these old compositions:
80
+
81
+ - a conveyor belt with two breakpoints
82
+ - Xiaohei pulling a judgment lever inside a content machine
83
+ - Xiaohei as a funnel sorting reach / trust / conversion
84
+ - Xiaohei cutting up a source-material fish
85
+ - Xiaohei pulling a handoff route
86
+ - Xiaohei tugging three layers of information sources
87
+ - three Xiaohei figures holding a megaphone, building a bridge, and opening a door
88
+ - Xiaohei stamping a messaging toolbox
89
+ - Xiaohei holding a warning sign over a trap path
90
+
91
+ Even when the theme is similar, invent a new metaphor. For example, a handoff path does not have to be a route; it could be Xiaohei connecting the tail of a piece of content to a doorknob. One-input-many-outputs does not have to be a fish; it could be Xiaohei pressing one paper lump into several different shapes.
@@ -0,0 +1,51 @@
1
+ # Image Prompt Template
2
+
3
+ Generate each image separately. Replace the placeholders with details from the current article. Do not combine multiple images into one.
4
+
5
+ ```text
6
+ Generate one standalone 16:9 horizontal article illustration.
7
+
8
+ Visual DNA:
9
+ Pure white background. Minimal black hand-drawn line art. Slightly wobbly pen lines. Lots of empty white space. Sparse red/orange/blue handwritten labels in English by default; switch languages only if the user explicitly asks. Clean absurd product-sketch feeling. No gradients, no shadows, no paper texture, no complex background, no commercial vector style, no PPT infographic look, no cute mascot poster, no children's illustration, no realistic UI.
10
+
11
+ Recurring IP character required:
12
+ Xiaohei, a small solid-black absurd creature with white dot eyes, tiny thin legs, blank serious expression, and a slightly uneven hand-drawn body shape. Xiaohei must perform the core conceptual action, not decorate the scene. Make Xiaohei serious, deadpan, and slightly bizarre, not cute.
13
+
14
+ Theme:
15
+ {illustration theme}
16
+
17
+ Structure type:
18
+ {Workflow / System slice / Before-after / Role state / Concept metaphor / Method layers / Route map / Comic beats}
19
+
20
+ Core idea:
21
+ {the core idea this image must explain}
22
+
23
+ Composition:
24
+ {where Xiaohei is, what Xiaohei is doing, what the main object is, and how information or motion flows}
25
+
26
+ Suggested elements:
27
+ {element 1} / {element 2} / {element 3} / {element 4}
28
+
29
+ Handwritten labels:
30
+ {label 1} / {label 2} / {label 3} / {label 4} / {optional label 5}
31
+
32
+ Color use:
33
+ Black for the main line art and Xiaohei. Orange for the main flow, path, or arrows. Red only for key warnings, problems, or outcomes. Blue only for secondary notes, feedback, or system state.
34
+
35
+ Constraints:
36
+ One image explains only one core structure. Keep the main subject around 40%-60% of the canvas. Preserve at least 35% blank white space. Use at most 5-8 short handwritten labels. Do not write a title in the top-left corner. Do not write the structure type on the image. Do not make it a formal diagram, course slide, or dense explainer. Do not copy prior examples or known case compositions unless the user explicitly requests it; invent a fresh visual metaphor for this specific article. The result should be clear but not over-instructional, interesting but not childish, and strange but clean.
37
+ ```
38
+
39
+ ## Image editing prompts
40
+
41
+ Remove a top-left title:
42
+
43
+ ```text
44
+ Edit the provided image. Remove only the handwritten title "{text to remove}" and its underline from the top-left corner. Fill that area with the same clean white background, matching the surrounding blank paper. Preserve everything else exactly: characters, labels, paths, line style, composition, aspect ratio, and image quality. Do not add any new text or objects.
45
+ ```
46
+
47
+ Make the image stranger while keeping the idea:
48
+
49
+ ```text
50
+ Regenerate this illustration with the same core meaning and simple layout, but make Xiaohei more central to the conceptual action. Xiaohei should be doing the strange work that explains the idea, not standing beside the diagram. Keep it clean, sparse, hand-drawn, and not cute.
51
+ ```
@@ -0,0 +1,48 @@
1
+ # QA Checklist
2
+
3
+ ## Must-pass checks
4
+
5
+ - It is a 16:9 landscape image.
6
+ - The background is clean white.
7
+ - Xiaohei is present.
8
+ - Xiaohei performs the core action instead of acting as decoration.
9
+ - The composition is not a copy of an old example; it uses a new metaphor for the current article.
10
+ - The image feels strange, inventive, and interesting.
11
+ - The canvas stays clean and sparse, with the subject using no more than about 60% of the space.
12
+ - One image explains only one core structure.
13
+ - Handwritten labels are few, short, and legible.
14
+ - Orange is used only for the main path or arrows.
15
+ - Red is used only for key points, warnings, problems, or results.
16
+ - Blue is used only for supporting notes, feedback, or system state.
17
+ - Unless the user explicitly requested another language, the response text and handwritten image labels are in English.
18
+
19
+ ## Failure signals
20
+
21
+ If any of these appear, regenerate or make a focused edit:
22
+
23
+ - There is a top-left title such as "Common traps," "Workflow," "System architecture," or "Route map."
24
+ - Xiaohei looks like a mascot, sticker, reaction image, or cute cartoon.
25
+ - The image looks like a PPT slide, courseware page, or formal flowchart.
26
+ - There are too many elements, arrows, or nodes.
27
+ - The labels turn into sentence-length explanations.
28
+ - The background contains paper texture, shadow, gradient, beige tint, or noise.
29
+ - The result contains realistic UI or glossy tech interfaces.
30
+ - Labels are unreadable or obviously incorrect.
31
+ - The image is stiff and lacks an absurd metaphor.
32
+ - The composition looks too similar to something in `assets/examples/`.
33
+
34
+ ## Iteration moves
35
+
36
+ - Too ordinary: make Xiaohei the action engine and add one strange but believable metaphor.
37
+ - Too complex: remove nodes and keep one action plus 3-5 short labels.
38
+ - Too cute: emphasize deadpan, blank serious expression, not cute, not mascot.
39
+ - Too PPT: remove titles, frames, tidy grids, and extra arrows; turn it back into a hand-drawn scene.
40
+ - Too similar to an old case: keep the core idea and replace the main object plus Xiaohei's action.
41
+ - Text errors: prefer a local edit first; if there are many errors, regenerate with fewer labels.
42
+ - Wrong language: regenerate or edit so the default output is English unless the user asked for another language.
43
+
44
+ ## Delivery bar
45
+
46
+ A high-quality image should make the reader think "that's a little weird" first, then understand the structure within one second.
47
+
48
+ If it looks like a tutorial page instead of an absurd product sketch on white paper, it is not ready.
@@ -0,0 +1,49 @@
1
+ # Style DNA
2
+
3
+ ## One-line summary
4
+
5
+ Pure white, minimal, hand-drawn, whitespace-heavy, restrained, absurd, product-sketch-like, with handwritten labels and a structure that reads clearly without turning into a manual.
6
+
7
+ It should feel like a quick explanatory sketch made on white paper by someone who has spent a long time working on AI, product, design, and developer tools.
8
+
9
+ ## Must-have traits
10
+
11
+ - 16:9 landscape article illustration.
12
+ - Pure white background: no beige, warm gray, paper texture, gradient, shadow, noise, or retro paper feel.
13
+ - Mostly black hand-drawn line art: thin lines, slight wobble, not mechanical, not vector-clean, not heavy-outline.
14
+ - Lots of whitespace: the subject should use about 40%-60% of the canvas, with at least 35% quiet blank space.
15
+ - Sparse handwritten labels: ideally no more than 5-8, and keep them short.
16
+ - English handwritten labels by default; switch only if the user explicitly requests another language.
17
+ - One image should explain one core action, structure, state, or metaphor.
18
+ - Let the structure read naturally without writing the structure-type name onto the image.
19
+
20
+ ## Color rules
21
+
22
+ - Black: main line art, character, outlines, structure, primary text, main objects.
23
+ - Red: priority notes, problems, emotional pressure points, key reminders, results.
24
+ - Orange: main flow, path, arrows, automation direction, movement from A to B.
25
+ - Blue: supporting notes, mental state, system state, second-layer explanation, AI/assistant/automation cues.
26
+
27
+ Blue is optional. Keep the palette restrained: fewer color accents are better than more.
28
+
29
+ ## Absolutely avoid
30
+
31
+ - commercial illustration
32
+ - PPT infographics
33
+ - formal flowcharts
34
+ - course slides
35
+ - cute mascot posters
36
+ - children's illustration
37
+ - complex architecture diagrams
38
+ - polished flat illustration
39
+ - glossy tech UI
40
+ - real app screenshots
41
+ - complex backgrounds, gradients, shadows, or textures
42
+ - explaining every node in full detail
43
+ - a top-left type label such as "Workflow," "System architecture," "Common traps," or "Route map"
44
+
45
+ ## Aesthetic direction
46
+
47
+ Aim for strange, inventive, interesting, clean, and imaginative.
48
+
49
+ Avoid cute, childish, overcomplicated, or rigid.
@@ -0,0 +1,53 @@
1
+ # Xiaohei IP
2
+
3
+ ## Character definition
4
+
5
+ Xiaohei is the recurring visual character in Ian's article-illustration style.
6
+
7
+ Xiaohei should appear in most images by default. Xiaohei is not a mascot, sticker, or cute decoration. Xiaohei is an absurd worker who is seriously participating in how the system functions.
8
+
9
+ ## Shape
10
+
11
+ - a small solid-black creature
12
+ - white dot eyes
13
+ - thin legs, sometimes thin arms
14
+ - a body that can read as a capsule, bean, box, funnel, shadow, hole, or black internal block inside a machine
15
+ - a slightly irregular outline with a hand-drawn feel
16
+ - a blank, deadpan, calm, serious expression
17
+
18
+ ## Personality
19
+
20
+ - serious, even when the task is absurd
21
+ - like a low-key system operator
22
+ - dryly funny, never trying to be cute
23
+ - slightly clumsy, but not stupid
24
+ - believable as if it really owns one small job inside a whiteboard sketch
25
+
26
+ ## Typical jobs
27
+
28
+ Make Xiaohei carry the core action:
29
+
30
+ - moving source material
31
+ - pulling lines to gather information sources
32
+ - getting stuck inside a breakpoint
33
+ - operating a judgment lever inside a machine
34
+ - becoming a sorting funnel
35
+ - cutting up a source-material fish
36
+ - stamping a handoff message
37
+ - pulling a handoff path
38
+ - holding a warning sign over a trap
39
+ - reaching out from a hole but failing to catch the content
40
+ - building, bridging, opening, sorting, logging, or carrying beside the main structure
41
+
42
+ ## Do not
43
+
44
+ - draw Xiaohei as an overly cute mascot
45
+ - turn Xiaohei into a children's-cartoon character
46
+ - give Xiaohei elaborate clothes, meme expressions, or sparkling eyes
47
+ - let Xiaohei stand in the corner and watch
48
+ - let Xiaohei overpower the structural idea
49
+ - make Xiaohei feel too commercial, too rounded, or too polished
50
+
51
+ ## Test for success
52
+
53
+ If you can remove Xiaohei and the core metaphor still works exactly the same, Xiaohei is too decorative. Rewrite the prompt so Xiaohei becomes the action engine.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@diegopetrucci/pi-extensions",
3
- "version": "0.1.43",
4
- "description": "A collection of pi extensions for annotation UIs, context management, workflow audits, review-comment triage, notifications, brrr push alerts, safety guards, GitHub research, repo-local knowledge, todos, tool rendering, and model/provider helpers.",
3
+ "version": "0.1.44",
4
+ "description": "A collection of pi extensions and skills for annotation UIs, context management, workflow audits, review-comment triage, notifications, brrr push alerts, safety guards, GitHub research, repo-local knowledge, todos, tool rendering, model/provider helpers, and Xiaohei-style article illustrations.",
5
5
  "keywords": [
6
6
  "pi-package",
7
7
  "pi",
@@ -56,7 +56,10 @@
56
56
  "./extensions/todo/index.ts",
57
57
  "./extensions/triage-comments/index.ts"
58
58
  ],
59
- "image": "https://raw.githubusercontent.com/diegopetrucci/pi-extensions/main/assets/oracle-preview.svg"
59
+ "image": "https://raw.githubusercontent.com/diegopetrucci/pi-extensions/main/assets/oracle-preview.svg",
60
+ "skills": [
61
+ "./extensions/illustrations-to-explain-things/skills"
62
+ ]
60
63
  },
61
64
  "devDependencies": {
62
65
  "@earendil-works/pi-ai": "^0.78.0",