@aiderdesk/aiderdesk 0.61.0 → 0.61.1
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/out/resources/skills/extension-creator/SKILL.md +320 -0
- package/out/resources/skills/extension-creator/assets/templates/Component.jsx.template +76 -0
- package/out/resources/skills/extension-creator/assets/templates/ConfigComponent.jsx.template +38 -0
- package/out/resources/skills/extension-creator/assets/templates/folder-extension/config.ts.template +29 -0
- package/out/resources/skills/extension-creator/assets/templates/folder-extension/index.ts.template +42 -0
- package/out/resources/skills/extension-creator/assets/templates/folder-extension/package.json +12 -0
- package/out/resources/skills/extension-creator/assets/templates/folder-extension/tsconfig.json +23 -0
- package/out/resources/skills/extension-creator/assets/templates/folder-extension-with-config/index.ts.template +80 -0
- package/out/resources/skills/extension-creator/assets/templates/single-file.ts.template +30 -0
- package/out/resources/skills/extension-creator/assets/templates/ui-component-external.ts.template +91 -0
- package/out/resources/skills/extension-creator/assets/templates/ui-component.ts.template +79 -0
- package/out/resources/skills/extension-creator/references/command-definition.md +170 -0
- package/out/resources/skills/extension-creator/references/config-components.md +427 -0
- package/out/resources/skills/extension-creator/references/event-types.md +156 -0
- package/out/resources/skills/extension-creator/references/examples-gallery.md +583 -0
- package/out/resources/skills/extension-creator/references/extension-interface.md +240 -0
- package/out/resources/skills/extension-creator/references/extension-types.md +186 -0
- package/out/resources/skills/extension-creator/references/in-repo-flow.md +132 -0
- package/out/resources/skills/extension-creator/references/install-targets.md +96 -0
- package/out/resources/skills/extension-creator/references/project-global-flow.md +76 -0
- package/out/resources/skills/extension-creator/references/ui-components.md +663 -0
- package/package.json +1 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Project / Global Installation Flow
|
|
2
|
+
|
|
3
|
+
This flow covers installing extensions to **Current Project** (`.aider-desk/extensions/`) or **Global** (`~/.aider-desk/extensions/`).
|
|
4
|
+
|
|
5
|
+
These two targets share the same creation process — only the destination directory differs.
|
|
6
|
+
|
|
7
|
+
## Process
|
|
8
|
+
|
|
9
|
+
1. **Determine extension type** — single-file or folder
|
|
10
|
+
2. **Create extension file(s)** in the target directory
|
|
11
|
+
3. **Implement Extension interface methods**
|
|
12
|
+
4. **Export metadata and default class**
|
|
13
|
+
5. **Verify** the extension loads correctly
|
|
14
|
+
|
|
15
|
+
That's it. No registry updates, no manifest files, no documentation changes.
|
|
16
|
+
|
|
17
|
+
## Directory Structure
|
|
18
|
+
|
|
19
|
+
### Single-File Extension
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
{targetDir}/ # .aider-desk/extensions/ or ~/.aider-desk/extensions/
|
|
23
|
+
└── my-extension.ts # Everything in one file
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Folder Extension
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
{targetDir}/ # .aider-desk/extensions/ or ~/.aider-desk/extensions/
|
|
30
|
+
└── my-extension/
|
|
31
|
+
├── index.ts # Main extension file
|
|
32
|
+
├── package.json # npm dependencies
|
|
33
|
+
├── tsconfig.json # TypeScript config
|
|
34
|
+
├── config.json # Optional: persistent config
|
|
35
|
+
├── ConfigComponent.jsx # Optional: settings UI
|
|
36
|
+
└── resources/ # Optional: WASM, queries, assets
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Step-by-Step
|
|
40
|
+
|
|
41
|
+
### Step 1: Determine type
|
|
42
|
+
|
|
43
|
+
- **Single-file**: No npm dependencies, simple logic, one file is enough
|
|
44
|
+
- **Folder**: Needs npm packages, multiple files, or resources (WASM, queries)
|
|
45
|
+
|
|
46
|
+
### Step 2: Create the extension
|
|
47
|
+
|
|
48
|
+
For single-file, create `{targetDir}/{name}.ts`.
|
|
49
|
+
For folder, create `{targetDir}/{name}/` with `index.ts`, `package.json`, `tsconfig.json`.
|
|
50
|
+
|
|
51
|
+
Use the templates:
|
|
52
|
+
- [single-file.ts.template](../assets/templates/single-file.ts.template)
|
|
53
|
+
- [folder-extension/](../assets/templates/folder-extension/)
|
|
54
|
+
- [folder-extension-with-config/index.ts.template](../assets/templates/folder-extension-with-config/index.ts.template)
|
|
55
|
+
|
|
56
|
+
### Step 3: Implement interface
|
|
57
|
+
|
|
58
|
+
Follow the same rules regardless of target:
|
|
59
|
+
|
|
60
|
+
- Import types from `@aiderdesk/extensions`
|
|
61
|
+
- Implement required lifecycle and registration methods
|
|
62
|
+
- Export metadata with all required fields
|
|
63
|
+
- Export class as default
|
|
64
|
+
|
|
65
|
+
Reference: [extension-interface.md](extension-interface.md)
|
|
66
|
+
|
|
67
|
+
### Step 4: Verify
|
|
68
|
+
|
|
69
|
+
The extension will be auto-discovered by AiderDesk from the target directory. No restart needed — extensions are watched and loaded dynamically.
|
|
70
|
+
|
|
71
|
+
## What NOT to do (Project/Global)
|
|
72
|
+
|
|
73
|
+
- Do NOT modify `packages/extensions/extensions.json` — that registry is only for In-Repo extensions
|
|
74
|
+
- Do NOT update `docs-site/docs/extensions/examples.md` — that's for documenting built-in extensions
|
|
75
|
+
- Do NOT use `@/` imports — they won't resolve outside the AiderDesk monorepo
|
|
76
|
+
- Do NOT add to `packages/common/src/` or any other AiderDesk source directory
|