@askdkc/kiokuko 0.1.8 → 0.1.10
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.
- package/README.ja.md +17 -10
- package/README.ko.md +16 -9
- package/README.md +45 -19
- package/README.zh-CN.md +16 -9
- package/dist/akinator/capabilities.d.ts.map +1 -1
- package/dist/akinator/capabilities.js +22 -8
- package/dist/akinator/capabilities.js.map +1 -1
- package/dist/akinator/service.d.ts.map +1 -1
- package/dist/akinator/service.js +2 -1
- package/dist/akinator/service.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +5 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/doctor.d.ts +5 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +57 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +11 -5
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +37 -10
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/setup.d.ts +3 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +30 -6
- package/dist/commands/setup.js.map +1 -1
- package/dist/config/paths.d.ts +5 -0
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +20 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/context/broker.d.ts.map +1 -1
- package/dist/context/broker.js +7 -3
- package/dist/context/broker.js.map +1 -1
- package/dist/context/delivery.d.ts.map +1 -1
- package/dist/context/delivery.js +12 -8
- package/dist/context/delivery.js.map +1 -1
- package/dist/knowledge/sources.js +1 -1
- package/dist/knowledge/sources.js.map +1 -1
- package/dist/ledger/archive.d.ts.map +1 -1
- package/dist/ledger/archive.js +14 -6
- package/dist/ledger/archive.js.map +1 -1
- package/dist/ledger/maintenance.js +4 -4
- package/dist/ledger/maintenance.js.map +1 -1
- package/dist/ledger/promotion.d.ts.map +1 -1
- package/dist/ledger/promotion.js +6 -4
- package/dist/ledger/promotion.js.map +1 -1
- package/dist/memory/curator.d.ts +1 -0
- package/dist/memory/curator.d.ts.map +1 -1
- package/dist/memory/curator.js +34 -18
- package/dist/memory/curator.js.map +1 -1
- package/dist/memory/entries.d.ts.map +1 -1
- package/dist/memory/entries.js +72 -31
- package/dist/memory/entries.js.map +1 -1
- package/dist/memory/hybrid-retrieval.d.ts.map +1 -1
- package/dist/memory/hybrid-retrieval.js +11 -5
- package/dist/memory/hybrid-retrieval.js.map +1 -1
- package/dist/memory/lifecycle.js +6 -6
- package/dist/memory/lifecycle.js.map +1 -1
- package/dist/memory/rebuild-search.d.ts.map +1 -1
- package/dist/memory/rebuild-search.js +26 -7
- package/dist/memory/rebuild-search.js.map +1 -1
- package/dist/memory/retrieval.d.ts.map +1 -1
- package/dist/memory/retrieval.js +9 -7
- package/dist/memory/retrieval.js.map +1 -1
- package/dist/memory/revisions.d.ts +44 -0
- package/dist/memory/revisions.d.ts.map +1 -0
- package/dist/memory/revisions.js +122 -0
- package/dist/memory/revisions.js.map +1 -0
- package/dist/memory/structured-memory.d.ts +2 -0
- package/dist/memory/structured-memory.d.ts.map +1 -1
- package/dist/memory/structured-memory.js +28 -0
- package/dist/memory/structured-memory.js.map +1 -1
- package/dist/setup/standard-skills.d.ts +13 -0
- package/dist/setup/standard-skills.d.ts.map +1 -0
- package/dist/setup/standard-skills.js +42 -0
- package/dist/setup/standard-skills.js.map +1 -0
- package/dist/web/i18n.d.ts +11 -1
- package/dist/web/i18n.d.ts.map +1 -1
- package/dist/web/i18n.js +44 -4
- package/dist/web/i18n.js.map +1 -1
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +12 -10
- package/dist/web/server.js.map +1 -1
- package/dist/web/ui.d.ts.map +1 -1
- package/dist/web/ui.js +170 -32
- package/dist/web/ui.js.map +1 -1
- package/migrations/001_initial.sql +51 -17
- package/migrations/002_fts.sql +13 -57
- package/migrations/004_agent_gateway.sql +4 -2
- package/migrations/005_hybrid_search.sql +16 -61
- package/migrations/007_akinator_reasoning.sql +4 -3
- package/package.json +2 -1
- package/skills/kiokuko-ui-design-soul/SKILL.md +50 -0
- package/skills/kiokuko-ui-design-soul/references/ui-checklist.md +71 -0
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
--
|
|
2
|
-
--
|
|
3
|
-
-- lexical search path.
|
|
1
|
+
-- Current-revision hybrid-search projections. Historical revisions are never
|
|
2
|
+
-- indexed; application code refreshes these projections after each mutation.
|
|
4
3
|
CREATE VIRTUAL TABLE entries_trigram USING fts5(
|
|
5
4
|
title,
|
|
6
5
|
body,
|
|
@@ -22,64 +21,20 @@ CREATE TABLE entry_search_signals (
|
|
|
22
21
|
CREATE INDEX idx_entry_search_signals_lookup
|
|
23
22
|
ON entry_search_signals(signal_type, normalized_value);
|
|
24
23
|
|
|
25
|
-
CREATE TRIGGER entries_trigram_ai AFTER INSERT ON entries BEGIN
|
|
26
|
-
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
27
|
-
VALUES (
|
|
28
|
-
new.rowid,
|
|
29
|
-
new.title,
|
|
30
|
-
new.body,
|
|
31
|
-
COALESCE(new.summary, ''),
|
|
32
|
-
COALESCE((SELECT group_concat(tag, ' ') FROM tags WHERE entry_id = new.id), '')
|
|
33
|
-
);
|
|
34
|
-
END;
|
|
35
|
-
|
|
36
|
-
CREATE TRIGGER entries_trigram_ad AFTER DELETE ON entries BEGIN
|
|
37
|
-
DELETE FROM entries_trigram WHERE rowid = old.rowid;
|
|
38
|
-
END;
|
|
39
|
-
|
|
40
|
-
CREATE TRIGGER entries_trigram_au AFTER UPDATE ON entries BEGIN
|
|
41
|
-
DELETE FROM entries_trigram WHERE rowid = old.rowid;
|
|
42
|
-
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
43
|
-
VALUES (
|
|
44
|
-
new.rowid,
|
|
45
|
-
new.title,
|
|
46
|
-
new.body,
|
|
47
|
-
COALESCE(new.summary, ''),
|
|
48
|
-
COALESCE((SELECT group_concat(tag, ' ') FROM tags WHERE entry_id = new.id), '')
|
|
49
|
-
);
|
|
50
|
-
END;
|
|
51
|
-
|
|
52
|
-
CREATE TRIGGER tags_trigram_ai AFTER INSERT ON tags BEGIN
|
|
53
|
-
DELETE FROM entries_trigram WHERE rowid = (SELECT rowid FROM entries WHERE id = new.entry_id);
|
|
54
|
-
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
55
|
-
SELECT entries.rowid, entries.title, entries.body, COALESCE(entries.summary, ''),
|
|
56
|
-
COALESCE((SELECT group_concat(tag, ' ') FROM tags WHERE entry_id = entries.id), '')
|
|
57
|
-
FROM entries WHERE entries.id = new.entry_id;
|
|
58
|
-
END;
|
|
59
|
-
|
|
60
|
-
CREATE TRIGGER tags_trigram_ad AFTER DELETE ON tags BEGIN
|
|
61
|
-
DELETE FROM entries_trigram WHERE rowid = (SELECT rowid FROM entries WHERE id = old.entry_id);
|
|
62
|
-
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
63
|
-
SELECT entries.rowid, entries.title, entries.body, COALESCE(entries.summary, ''),
|
|
64
|
-
COALESCE((SELECT group_concat(tag, ' ') FROM tags WHERE entry_id = entries.id), '')
|
|
65
|
-
FROM entries WHERE entries.id = old.entry_id;
|
|
66
|
-
END;
|
|
67
|
-
|
|
68
|
-
CREATE TRIGGER tags_trigram_au AFTER UPDATE OF tag ON tags BEGIN
|
|
69
|
-
DELETE FROM entries_trigram WHERE rowid = (SELECT rowid FROM entries WHERE id = old.entry_id);
|
|
70
|
-
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
71
|
-
SELECT entries.rowid, entries.title, entries.body, COALESCE(entries.summary, ''),
|
|
72
|
-
COALESCE((SELECT group_concat(tag, ' ') FROM tags WHERE entry_id = entries.id), '')
|
|
73
|
-
FROM entries WHERE entries.id = new.entry_id;
|
|
74
|
-
END;
|
|
75
|
-
|
|
76
24
|
INSERT INTO entries_trigram(rowid, title, body, summary, tags_text)
|
|
77
|
-
SELECT
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
COALESCE(
|
|
81
|
-
COALESCE((SELECT group_concat(tag, ' ')
|
|
82
|
-
FROM
|
|
25
|
+
SELECT e.rowid,
|
|
26
|
+
r.title,
|
|
27
|
+
r.body,
|
|
28
|
+
COALESCE(r.summary, ''),
|
|
29
|
+
COALESCE((SELECT group_concat(tag, ' ')
|
|
30
|
+
FROM entry_revision_tags
|
|
31
|
+
WHERE entry_id = e.id AND revision = e.current_revision), '')
|
|
32
|
+
FROM entries AS e
|
|
33
|
+
JOIN entry_revisions AS r
|
|
34
|
+
ON r.entry_id = e.id AND r.revision = e.current_revision;
|
|
83
35
|
|
|
84
36
|
INSERT INTO entry_search_signals(entry_id, signal_type, normalized_value)
|
|
85
|
-
SELECT entry_id, 'tag', lower(trim(tag))
|
|
37
|
+
SELECT t.entry_id, 'tag', lower(trim(t.tag))
|
|
38
|
+
FROM entry_revision_tags AS t
|
|
39
|
+
JOIN entries AS e ON e.id = t.entry_id AND e.current_revision = t.revision
|
|
40
|
+
WHERE length(trim(t.tag)) > 0;
|
|
@@ -50,9 +50,10 @@ BEGIN
|
|
|
50
50
|
AND a.workspace = NEW.workspace
|
|
51
51
|
) OR NOT EXISTS (
|
|
52
52
|
SELECT 1
|
|
53
|
-
|
|
53
|
+
FROM entries AS e
|
|
54
|
+
JOIN entry_revisions AS er
|
|
55
|
+
ON er.entry_id = e.id AND er.revision = NEW.entry_revision
|
|
54
56
|
WHERE e.id = NEW.entry_id
|
|
55
|
-
AND
|
|
56
|
-
AND e.workspace IN (NEW.workspace, 'global')
|
|
57
|
+
AND er.workspace IN (NEW.workspace, 'global')
|
|
57
58
|
);
|
|
58
59
|
END;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@askdkc/kiokuko",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "Model-agnostic external memory for AI coding agents",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"files": [
|
|
16
16
|
"dist/",
|
|
17
17
|
"migrations/",
|
|
18
|
+
"skills/",
|
|
18
19
|
"templates/",
|
|
19
20
|
"README.md",
|
|
20
21
|
"README.ja.md",
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: kiokuko-ui-design-soul
|
|
3
|
+
description: Apply HIG principles to app and web UI design, implementation, and review.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- KIOKUKO MANAGED STANDARD SKILL: kiokuko-ui-design-soul -->
|
|
7
|
+
|
|
8
|
+
# UI design soul
|
|
9
|
+
|
|
10
|
+
Use this skill when designing, implementing, or reviewing application and web interfaces. Do not invoke it for backend-only work, image generation alone, or tasks unrelated to an interface.
|
|
11
|
+
|
|
12
|
+
Treat Purpose, Agency, Responsibility, Familiarity, Flexibility, Simplicity, Craft, and Delight as decision principles, not as a mandate to copy Apple's visual style. Product requirements, the existing design system, accessibility standards, and safety and privacy requirements take precedence.
|
|
13
|
+
|
|
14
|
+
## Establish the intent
|
|
15
|
+
|
|
16
|
+
Before choosing components or styling, state or infer from evidence:
|
|
17
|
+
|
|
18
|
+
- the interface's purpose;
|
|
19
|
+
- the people it serves;
|
|
20
|
+
- their primary task;
|
|
21
|
+
- how they should feel while completing it.
|
|
22
|
+
|
|
23
|
+
If any of these would materially change the design and cannot be inferred, ask one focused question. Otherwise, proceed and state the assumption.
|
|
24
|
+
|
|
25
|
+
## Design the interaction contract
|
|
26
|
+
|
|
27
|
+
For every relevant action, cover the states that can occur: actionable, pressed or focused, processing, success, empty, failure, offline, permission denied, destructive confirmation, and recovered. Omit only states that are genuinely impossible.
|
|
28
|
+
|
|
29
|
+
- Give buttons immediate press and focus feedback.
|
|
30
|
+
- Keep asynchronous feedback in the action's context: update its label or status, show progress, and prevent accidental duplicate execution.
|
|
31
|
+
- Use determinate progress when completion can be measured and indeterminate progress otherwise.
|
|
32
|
+
- If progress stalls, explain why and identify the next action. Offer cancellation when the operation can be interrupted safely.
|
|
33
|
+
- Preserve input and completed work on failure. Provide a recovery path such as retry, undo, or back.
|
|
34
|
+
- Match confirmation strength to risk. Prefer undo for safely reversible actions; require explicit confirmation when recovery is unavailable or harm is material.
|
|
35
|
+
- Use motion only to clarify state, continuity, or causality. Never make animation the only carrier of information, and respect Reduced Motion.
|
|
36
|
+
|
|
37
|
+
## Adapt to the platform
|
|
38
|
+
|
|
39
|
+
For web interfaces, do not force an Apple-like appearance. Follow the existing design system, semantic HTML, WCAG 2.2, and the conventions of the target platform. Support keyboard, screen reader, touch, pointer, responsive layouts, and relevant system preferences.
|
|
40
|
+
|
|
41
|
+
Treat Delight as the combined result of task completion, confidence, recoverability, and careful detail—not as an amount of decoration.
|
|
42
|
+
|
|
43
|
+
## Deliver and verify
|
|
44
|
+
|
|
45
|
+
1. Identify the primary flow and interaction states before polishing the happy path.
|
|
46
|
+
2. Implement feedback and recovery beside the action that triggers them.
|
|
47
|
+
3. Test with real input methods and accessibility settings, not screenshots alone.
|
|
48
|
+
4. Report covered states, verified behaviors, and any known gaps.
|
|
49
|
+
|
|
50
|
+
Read [references/ui-checklist.md](references/ui-checklist.md) when producing or reviewing a concrete interface, when asynchronous or destructive behavior is involved, or when accessibility validation is in scope.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
<!-- KIOKUKO MANAGED STANDARD SKILL: kiokuko-ui-design-soul -->
|
|
2
|
+
|
|
3
|
+
# UI design and review checklist
|
|
4
|
+
|
|
5
|
+
Last reviewed against the official sources: 2026-08-22.
|
|
6
|
+
|
|
7
|
+
This checklist paraphrases decision principles. It does not reproduce Apple text or require Apple-styled visuals.
|
|
8
|
+
|
|
9
|
+
## Eight-principle map
|
|
10
|
+
|
|
11
|
+
| Principle | Practical question |
|
|
12
|
+
| --- | --- |
|
|
13
|
+
| Purpose | Does every important element help the user complete the primary task? |
|
|
14
|
+
| Agency | Can the user understand, initiate, interrupt where safe, and recover from actions? |
|
|
15
|
+
| Responsibility | Does the interface protect privacy, attention, safety, and user-created work? |
|
|
16
|
+
| Familiarity | Do labels, controls, navigation, and feedback follow the target platform's conventions? |
|
|
17
|
+
| Flexibility | Does the flow adapt to ability, input method, device, content size, and context? |
|
|
18
|
+
| Simplicity | Is the next meaningful action clear without hiding necessary information or control? |
|
|
19
|
+
| Craft | Are states, spacing, copy, timing, focus, and edge cases implemented consistently? |
|
|
20
|
+
| Delight | Does successful, calm, recoverable use feel better because the details work together? |
|
|
21
|
+
|
|
22
|
+
## State coverage
|
|
23
|
+
|
|
24
|
+
For each primary action, verify the applicable states:
|
|
25
|
+
|
|
26
|
+
- **Actionable:** the label predicts the result; enabled and disabled states are distinguishable without color alone.
|
|
27
|
+
- **Pressed and focused:** feedback is immediate; keyboard focus is visible; focus order follows the task.
|
|
28
|
+
- **Processing:** status remains near the initiating control; duplicate submission is prevented without trapping the user.
|
|
29
|
+
- **Progress:** measurable work uses a determinate value; unmeasurable work uses an indeterminate indicator and an accessible status message.
|
|
30
|
+
- **Long or stalled work:** expectations are updated; a reason and next step are shown; cancellation is available only when it is safe and real.
|
|
31
|
+
- **Success:** completion is perceivable visually and programmatically; the interface moves focus only when that helps the next task.
|
|
32
|
+
- **Empty:** the state explains what is absent and offers a relevant next action rather than presenting a dead end.
|
|
33
|
+
- **Failure:** input and completed work are retained; the message says what happened in actionable language; retry, undo, or back is available where meaningful.
|
|
34
|
+
- **Offline:** unavailable behavior is explicit; queued or local work is not implied unless it is actually preserved.
|
|
35
|
+
- **Permission denied:** explain the missing capability and provide a safe route to settings, an alternative, or back.
|
|
36
|
+
- **Destructive:** communicate scope and consequence; prefer undo for reversible actions and use explicit confirmation for material irreversible harm.
|
|
37
|
+
- **Recovered:** clear stale errors and busy states; restore a coherent focus position; avoid re-running the action unexpectedly.
|
|
38
|
+
|
|
39
|
+
## Accessibility and adaptation
|
|
40
|
+
|
|
41
|
+
- Use semantic HTML or native controls before recreating their behavior.
|
|
42
|
+
- Verify the full primary flow with keyboard only, including visible focus and escape from overlays.
|
|
43
|
+
- Verify names, roles, values, errors, progress, and status announcements with a screen reader.
|
|
44
|
+
- Test touch, pointer, keyboard, and relevant alternate input; do not require hover, precise pointing, or a single gesture.
|
|
45
|
+
- Test narrow and wide layouts, zoom or text resizing, longer translated copy, and dynamic content.
|
|
46
|
+
- Do not encode meaning with color, motion, shape, or sound alone.
|
|
47
|
+
- Respect Reduced Motion and provide equivalent state information without animation.
|
|
48
|
+
- Keep time limits adjustable or avoid them unless the task itself requires one.
|
|
49
|
+
- On the web, apply the existing design system and WCAG 2.2; do not imitate iOS merely because these principles originated in Apple HIG.
|
|
50
|
+
|
|
51
|
+
## Async-action spot check
|
|
52
|
+
|
|
53
|
+
For a save, upload, generation, import, or other asynchronous action, confirm:
|
|
54
|
+
|
|
55
|
+
1. Press or focus feedback is immediate.
|
|
56
|
+
2. The busy state names the ongoing action and blocks accidental duplicates.
|
|
57
|
+
3. Progress type matches what the system can measure.
|
|
58
|
+
4. Cancellation has defined semantics and leaves data consistent.
|
|
59
|
+
5. Success and failure are announced in the same task context.
|
|
60
|
+
6. A failure keeps user input and provides a tested recovery path.
|
|
61
|
+
|
|
62
|
+
## Official sources
|
|
63
|
+
|
|
64
|
+
- Apple Human Interface Guidelines — Design principles: https://developer.apple.com/design/human-interface-guidelines/design-principles
|
|
65
|
+
- Apple Human Interface Guidelines — Buttons: https://developer.apple.com/design/human-interface-guidelines/buttons
|
|
66
|
+
- Apple Human Interface Guidelines — Loading: https://developer.apple.com/design/human-interface-guidelines/loading
|
|
67
|
+
- Apple Human Interface Guidelines — Progress indicators: https://developer.apple.com/design/human-interface-guidelines/progress-indicators
|
|
68
|
+
- Apple Human Interface Guidelines — Feedback: https://developer.apple.com/design/human-interface-guidelines/feedback
|
|
69
|
+
- Apple Human Interface Guidelines — Motion: https://developer.apple.com/design/human-interface-guidelines/motion
|
|
70
|
+
- Apple Human Interface Guidelines — Accessibility: https://developer.apple.com/design/human-interface-guidelines/accessibility
|
|
71
|
+
- W3C Web Content Accessibility Guidelines 2.2: https://www.w3.org/TR/WCAG22/
|