@hybridlabor-api/aos 4.8.0 → 4.10.0

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 (186) hide show
  1. package/.agents/{agents.md → AGENTS.md} +3 -1
  2. package/.agents/nodes.json +3 -1
  3. package/.agents/vendor-manifest.json +23 -1
  4. package/.claude/agents/godmode-media-eventtech.md +1 -1
  5. package/.claude/hooks/conventional-commits.mjs +125 -0
  6. package/.claude/hooks/env-file-protection.mjs +105 -0
  7. package/.claude/hooks/go-gate.mjs +101 -81
  8. package/.claude/hooks/memb-inject.mjs +29 -1
  9. package/.claude/settings.json +13 -0
  10. package/.claude/workflows/startcycle-dispatch.mjs +23 -1
  11. package/.opencode/agents/godmode-media-eventtech.md +1 -1
  12. package/.opencode/plugins/bdb-aos.js +31 -4
  13. package/CLAUDE.md +0 -571
  14. package/README.de.md +1 -1
  15. package/README.md +1 -1
  16. package/README.pt.md +1 -1
  17. package/THIRD_PARTY_NOTICES.md +126 -0
  18. package/bin/aos-doctor.mjs +1 -1
  19. package/docs/skills_table.md +1 -1
  20. package/installer.js +187 -55
  21. package/package.json +7 -3
  22. package/packages/aos-cli/README.md +80 -0
  23. package/packages/aos-cli/bin/aos-cli.mjs +134 -0
  24. package/packages/aos-cli/core-skills.json +12 -0
  25. package/packages/aos-cli/extensions/aos.ts +321 -0
  26. package/packages/aos-cli/package-lock.json +1923 -0
  27. package/packages/aos-cli/package.json +29 -0
  28. package/packages/aos-cli/scripts/check-theme.mjs +63 -0
  29. package/packages/aos-cli/themes/aos.json +97 -0
  30. package/scripts/build-plugin-manifest.mjs +131 -0
  31. package/scripts/validate-skills.mjs +81 -6
  32. package/skills/basic/ao-orchestrator/SKILL.md +116 -0
  33. package/skills/basic/bdb-eventagency-skill/SKILL.md +252 -0
  34. package/skills/basic/bdb-shipping-skill/SKILL.md +161 -0
  35. package/skills/basic/godmode-eventtech/SKILL.md +4 -1
  36. package/skills/global_config/agenttrail/SKILL.md +6 -1
  37. package/skills/global_config/aos-project-init/SKILL.md +2 -0
  38. package/skills/global_config/aos-project-init/assets/AGENTS.template.md +1 -1
  39. package/skills/global_config/aos-project-init/scripts/aos-project-doctor.mjs +1 -1
  40. package/skills/global_config/aos-setup/SKILL.md +1 -1
  41. package/skills/global_config/aos-setup/scripts/aos-doctor.mjs +1 -1
  42. package/skills/global_config/ask-tim/SKILL.md +7 -7
  43. package/skills/global_config/bash-script-generator/SKILL.md +201 -0
  44. package/skills/global_config/bash-script-generator/assets/templates/standard-template.sh +96 -0
  45. package/skills/global_config/bash-script-generator/docs/bash-scripting-guide.md +729 -0
  46. package/skills/global_config/bash-script-generator/docs/generation-best-practices.md +193 -0
  47. package/skills/global_config/bash-script-generator/docs/script-patterns.md +566 -0
  48. package/skills/global_config/bash-script-generator/docs/text-processing-guide.md +437 -0
  49. package/skills/global_config/bash-script-generator/examples/log-analyzer.sh +92 -0
  50. package/skills/global_config/bash-script-generator/scripts/generate_script_template.sh +123 -0
  51. package/skills/global_config/bash-script-generator/scripts/run_ci_checks.sh +172 -0
  52. package/skills/global_config/bash-script-generator/scripts/test_generator.sh +413 -0
  53. package/skills/global_config/bash-script-validator/SKILL.md +249 -0
  54. package/skills/global_config/bash-script-validator/docs/awk-reference.md +449 -0
  55. package/skills/global_config/bash-script-validator/docs/bash-reference.md +468 -0
  56. package/skills/global_config/bash-script-validator/docs/common-mistakes.md +623 -0
  57. package/skills/global_config/bash-script-validator/docs/grep-reference.md +395 -0
  58. package/skills/global_config/bash-script-validator/docs/regex-reference.md +391 -0
  59. package/skills/global_config/bash-script-validator/docs/sed-reference.md +454 -0
  60. package/skills/global_config/bash-script-validator/docs/shell-reference.md +463 -0
  61. package/skills/global_config/bash-script-validator/docs/shellcheck-reference.md +399 -0
  62. package/skills/global_config/bash-script-validator/examples/bad-bash.sh +55 -0
  63. package/skills/global_config/bash-script-validator/examples/bad-shell.sh +54 -0
  64. package/skills/global_config/bash-script-validator/examples/good-bash.sh +71 -0
  65. package/skills/global_config/bash-script-validator/examples/good-shell.sh +69 -0
  66. package/skills/global_config/bash-script-validator/scripts/run_ci_checks.sh +23 -0
  67. package/skills/global_config/bash-script-validator/scripts/shellcheck_wrapper.sh +174 -0
  68. package/skills/global_config/bash-script-validator/scripts/test_validate.sh +446 -0
  69. package/skills/global_config/bash-script-validator/scripts/validate.sh +512 -0
  70. package/skills/global_config/ci-pipeline/SKILL.md +135 -0
  71. package/skills/global_config/deja-memory/SKILL.md +3 -1
  72. package/skills/global_config/dispatching-parallel-agents/SKILL.md +170 -0
  73. package/skills/global_config/dockerfile-generator/SKILL.md +1038 -0
  74. package/skills/global_config/dockerfile-generator/examples/example.dockerignore +95 -0
  75. package/skills/global_config/dockerfile-generator/examples/golang-distroless.Dockerfile +34 -0
  76. package/skills/global_config/dockerfile-generator/examples/java-springboot.Dockerfile +45 -0
  77. package/skills/global_config/dockerfile-generator/examples/nextjs-production.Dockerfile +49 -0
  78. package/skills/global_config/dockerfile-generator/examples/nodejs-multistage.Dockerfile +55 -0
  79. package/skills/global_config/dockerfile-generator/examples/python-fastapi.Dockerfile +48 -0
  80. package/skills/global_config/dockerfile-generator/references/language_specific_guides.md +510 -0
  81. package/skills/global_config/dockerfile-generator/references/multistage_builds.md +570 -0
  82. package/skills/global_config/dockerfile-generator/references/optimization_patterns.md +492 -0
  83. package/skills/global_config/dockerfile-generator/references/security_best_practices.md +375 -0
  84. package/skills/global_config/dockerfile-generator/scripts/generate_dockerignore.sh +199 -0
  85. package/skills/global_config/dockerfile-generator/scripts/generate_golang.sh +172 -0
  86. package/skills/global_config/dockerfile-generator/scripts/generate_java.sh +185 -0
  87. package/skills/global_config/dockerfile-generator/scripts/generate_nodejs.sh +279 -0
  88. package/skills/global_config/dockerfile-generator/scripts/generate_python.sh +218 -0
  89. package/skills/global_config/dockerfile-generator/scripts/test_generator.sh +210 -0
  90. package/skills/global_config/dockerfile-validator/SKILL.md +300 -0
  91. package/skills/global_config/dockerfile-validator/examples/.dockerignore.example +34 -0
  92. package/skills/global_config/dockerfile-validator/examples/bad-example.Dockerfile +37 -0
  93. package/skills/global_config/dockerfile-validator/examples/golang-distroless.Dockerfile +50 -0
  94. package/skills/global_config/dockerfile-validator/examples/good-example.Dockerfile +52 -0
  95. package/skills/global_config/dockerfile-validator/examples/python-optimized.Dockerfile +53 -0
  96. package/skills/global_config/dockerfile-validator/examples/security-issues.Dockerfile +42 -0
  97. package/skills/global_config/dockerfile-validator/references/docker_best_practices.md +348 -0
  98. package/skills/global_config/dockerfile-validator/references/optimization_guide.md +473 -0
  99. package/skills/global_config/dockerfile-validator/references/security_checklist.md +208 -0
  100. package/skills/global_config/dockerfile-validator/scripts/dockerfile-validate.sh +699 -0
  101. package/skills/global_config/dockerfile-validator/scripts/test_validate.sh +35 -0
  102. package/skills/global_config/dockerfile-validator/tests/fixtures/copy-before-yarn-lock-read.Dockerfile +6 -0
  103. package/skills/global_config/dockerfile-validator/tests/fixtures/copy-before-yarn.Dockerfile +6 -0
  104. package/skills/global_config/dockerfile-validator/tests/fixtures/from-platform-nonroot.Dockerfile +7 -0
  105. package/skills/global_config/dockerfile-validator/tests/test_regression.sh +164 -0
  106. package/skills/global_config/finishing-a-development-branch/SKILL.md +228 -0
  107. package/skills/global_config/github-actions-generator/SKILL.md +353 -0
  108. package/skills/global_config/github-actions-generator/assets/templates/action/composite/action.yml +82 -0
  109. package/skills/global_config/github-actions-generator/assets/templates/action/docker/Dockerfile +25 -0
  110. package/skills/global_config/github-actions-generator/assets/templates/action/docker/action.yml +42 -0
  111. package/skills/global_config/github-actions-generator/assets/templates/action/docker/entrypoint.sh +27 -0
  112. package/skills/global_config/github-actions-generator/assets/templates/action/javascript/action.yml +33 -0
  113. package/skills/global_config/github-actions-generator/assets/templates/action/javascript/index.js +50 -0
  114. package/skills/global_config/github-actions-generator/assets/templates/action/javascript/package.json +27 -0
  115. package/skills/global_config/github-actions-generator/assets/templates/workflow/basic_workflow.yml +242 -0
  116. package/skills/global_config/github-actions-generator/assets/templates/workflow/reusable_workflow.yml +106 -0
  117. package/skills/global_config/github-actions-generator/examples/README.md +147 -0
  118. package/skills/global_config/github-actions-generator/examples/actions/setup-node-cached/action.yml +93 -0
  119. package/skills/global_config/github-actions-generator/examples/caching/docker-buildkit.yml +256 -0
  120. package/skills/global_config/github-actions-generator/examples/security/dependency-review.yml +62 -0
  121. package/skills/global_config/github-actions-generator/examples/security/sbom-attestation.yml +119 -0
  122. package/skills/global_config/github-actions-generator/examples/triggers/chatops-commands.yml +475 -0
  123. package/skills/global_config/github-actions-generator/examples/triggers/repository-dispatch.yml +418 -0
  124. package/skills/global_config/github-actions-generator/examples/triggers/workflow-orchestration.yml +404 -0
  125. package/skills/global_config/github-actions-generator/examples/workflows/docker-build-push.yml +68 -0
  126. package/skills/global_config/github-actions-generator/examples/workflows/go-ci.yml +161 -0
  127. package/skills/global_config/github-actions-generator/examples/workflows/monorepo-ci.yml +340 -0
  128. package/skills/global_config/github-actions-generator/examples/workflows/multi-environment-deploy.yml +406 -0
  129. package/skills/global_config/github-actions-generator/examples/workflows/nodejs-ci.yml +122 -0
  130. package/skills/global_config/github-actions-generator/examples/workflows/python-ci.yml +157 -0
  131. package/skills/global_config/github-actions-generator/examples/workflows/scheduled-tasks.yml +376 -0
  132. package/skills/global_config/github-actions-generator/references/advanced-triggers.md +917 -0
  133. package/skills/global_config/github-actions-generator/references/best-practices.md +755 -0
  134. package/skills/global_config/github-actions-generator/references/common-actions.md +715 -0
  135. package/skills/global_config/github-actions-generator/references/custom-actions.md +320 -0
  136. package/skills/global_config/github-actions-generator/references/expressions-and-contexts.md +688 -0
  137. package/skills/global_config/github-actions-generator/references/modern-features.md +421 -0
  138. package/skills/global_config/github-actions-generator/scripts/test_generator.sh +344 -0
  139. package/skills/global_config/github-actions-templates/SKILL.md +7 -0
  140. package/skills/global_config/github-actions-validator/SKILL.md +576 -0
  141. package/skills/global_config/github-actions-validator/examples/README.md +88 -0
  142. package/skills/global_config/github-actions-validator/examples/outdated-versions.yml +76 -0
  143. package/skills/global_config/github-actions-validator/examples/valid-ci.yml +79 -0
  144. package/skills/global_config/github-actions-validator/examples/with-errors.yml +47 -0
  145. package/skills/global_config/github-actions-validator/references/act_usage.md +233 -0
  146. package/skills/global_config/github-actions-validator/references/action_versions.md +122 -0
  147. package/skills/global_config/github-actions-validator/references/actionlint_usage.md +343 -0
  148. package/skills/global_config/github-actions-validator/references/common_errors.md +512 -0
  149. package/skills/global_config/github-actions-validator/references/modern_features.md +384 -0
  150. package/skills/global_config/github-actions-validator/references/runners.md +317 -0
  151. package/skills/global_config/github-actions-validator/scripts/install_tools.sh +113 -0
  152. package/skills/global_config/github-actions-validator/scripts/validate_workflow.sh +910 -0
  153. package/skills/global_config/github-actions-validator/tests/test_validate_workflow.sh +237 -0
  154. package/skills/global_config/makefile-generator/SKILL.md +614 -0
  155. package/skills/global_config/makefile-generator/assets/templates/.gitkeep +1 -0
  156. package/skills/global_config/makefile-generator/docs/makefile-structure.md +530 -0
  157. package/skills/global_config/makefile-generator/docs/optimization-guide.md +784 -0
  158. package/skills/global_config/makefile-generator/docs/patterns-guide.md +642 -0
  159. package/skills/global_config/makefile-generator/docs/security-guide.md +361 -0
  160. package/skills/global_config/makefile-generator/docs/targets-guide.md +642 -0
  161. package/skills/global_config/makefile-generator/docs/variables-guide.md +596 -0
  162. package/skills/global_config/makefile-generator/scripts/add_standard_targets.sh +539 -0
  163. package/skills/global_config/makefile-generator/scripts/generate_makefile_template.sh +690 -0
  164. package/skills/global_config/makefile-generator/test/test_helper_scripts.sh +190 -0
  165. package/skills/global_config/makefile-validator/SKILL.md +244 -0
  166. package/skills/global_config/makefile-validator/docs/bake-tool.md +1000 -0
  167. package/skills/global_config/makefile-validator/docs/best-practices.md +858 -0
  168. package/skills/global_config/makefile-validator/docs/common-mistakes.md +944 -0
  169. package/skills/global_config/makefile-validator/examples/bad-makefile.mk +77 -0
  170. package/skills/global_config/makefile-validator/examples/good-makefile.mk +103 -0
  171. package/skills/global_config/makefile-validator/scripts/test_validate.sh +382 -0
  172. package/skills/global_config/makefile-validator/scripts/validate_makefile.sh +712 -0
  173. package/skills/global_config/{MCP_Manage → mcp-manage}/SKILL.md +3 -3
  174. package/skills/global_config/plan-canvas/SKILL.md +9 -2
  175. package/skills/global_config/plan-canvas/scripts/lib/plan-canvas/ui.js +10 -2
  176. package/skills/global_config/plan-canvas/scripts/plan-canvas.js +1 -1
  177. package/skills/global_config/read-the-damn-docs/SKILL.md +175 -0
  178. package/skills/global_config/requesting-code-review/SKILL.md +98 -0
  179. package/skills/global_config/requesting-code-review/code-reviewer.md +198 -0
  180. package/skills/global_config/using-git-worktrees/SKILL.md +170 -0
  181. package/skills/global_config/verification-before-completion/SKILL.md +123 -0
  182. package/skills/global_config/writing-plans/SKILL.md +126 -46
  183. package/skills/global_config/writing-plans-legacy/SKILL.md +152 -0
  184. package/.claude/CLAUDE.md +0 -12
  185. package/mcps/RhinoMCP/docs/content/docs/getting-started/gemini.md +0 -61
  186. /package/{GEMINI.md → RULES.md} +0 -0
@@ -0,0 +1,320 @@
1
+ # Custom GitHub Actions Guide
2
+
3
+ **Last Updated:** December 2025
4
+
5
+ This guide covers creating custom GitHub Actions: composite, Docker, and JavaScript actions with proper metadata, directory structure, and versioning.
6
+
7
+ ## Table of Contents
8
+ 1. [Action Types](#action-types)
9
+ 2. [Action Metadata](#action-metadata)
10
+ 3. [Directory Structure](#directory-structure)
11
+ 4. [Versioning](#versioning)
12
+ 5. [Publishing to Marketplace](#publishing-to-marketplace)
13
+
14
+ ---
15
+
16
+ ## Action Types
17
+
18
+ | Type | Runtime | Use Case | Performance |
19
+ |------|---------|----------|-------------|
20
+ | Composite | Shell/Actions | Combine multiple steps | Fast startup |
21
+ | Docker | Container | Custom environment/tools | Slower startup |
22
+ | JavaScript | Node.js | API interactions, complex logic | Fastest |
23
+
24
+ ---
25
+
26
+ ## Action Metadata
27
+
28
+ ### Branding
29
+
30
+ Add branding to make your action visually distinctive in GitHub Marketplace:
31
+
32
+ ```yaml
33
+ name: 'Setup Node.js with Cache'
34
+ description: 'Setup Node.js with automatic dependency caching'
35
+ author: 'Your Name or Organization'
36
+
37
+ branding:
38
+ icon: 'package' # Feather icon name
39
+ color: 'blue' # Available: white, yellow, blue, green, orange, red, purple, gray-dark
40
+
41
+ inputs:
42
+ node-version:
43
+ description: 'Node.js version to use'
44
+ required: true
45
+ ```
46
+
47
+ **Available Icons:** See [Feather Icons](https://feathericons.com/) - e.g., `package`, `box`, `server`, `code`, `git-branch`, `shield`, `check-circle`
48
+
49
+ **Best Practices:**
50
+ - Choose icons that represent the action's purpose
51
+ - Use consistent branding across related actions
52
+ - Branding is required for GitHub Marketplace publishing
53
+
54
+ ---
55
+
56
+ ## Directory Structure
57
+
58
+ ### Local Repository Actions
59
+
60
+ Use `.github/actions/` for actions within the same repository:
61
+
62
+ ```
63
+ repository-root/
64
+ ├── .github/
65
+ │ ├── actions/ # Local custom actions
66
+ │ │ ├── setup-node-cached/ # Composite action
67
+ │ │ │ ├── action.yml
68
+ │ │ │ └── README.md
69
+ │ │ ├── terraform-validator/ # Docker action
70
+ │ │ │ ├── action.yml
71
+ │ │ │ ├── Dockerfile
72
+ │ │ │ ├── entrypoint.sh
73
+ │ │ │ └── README.md
74
+ │ │ └── label-pr/ # JavaScript action
75
+ │ │ ├── action.yml
76
+ │ │ ├── dist/
77
+ │ │ │ └── index.js # Compiled/bundled JS
78
+ │ │ ├── src/
79
+ │ │ │ └── index.ts # Source TypeScript
80
+ │ │ ├── package.json
81
+ │ │ └── README.md
82
+ │ └── workflows/
83
+ │ └── ci.yml
84
+ ```
85
+
86
+ **Usage in Workflows:**
87
+ ```yaml
88
+ steps:
89
+ # Local action (same repository)
90
+ - uses: ./.github/actions/setup-node-cached
91
+ with:
92
+ node-version: '20'
93
+
94
+ # Action from another repository
95
+ - uses: owner/repo/.github/actions/action-name@v1
96
+ ```
97
+
98
+ ### Standalone Action Repositories
99
+
100
+ For actions intended for GitHub Marketplace or cross-repo reuse:
101
+
102
+ ```
103
+ action-repository-root/
104
+ ├── action.yml # Action definition (MUST be in root)
105
+ ├── README.md # Usage documentation
106
+ ├── LICENSE # License file
107
+ ├── CHANGELOG.md # Version history
108
+ ├── dist/ # Compiled code (JS actions)
109
+ │ └── index.js
110
+ ├── src/ # Source code (JS actions)
111
+ │ └── index.ts
112
+ └── Dockerfile # For Docker actions
113
+ ```
114
+
115
+ **Best Practices:**
116
+ - Use `.github/actions/` for repository-local actions
117
+ - Create separate repos for reusable/Marketplace actions
118
+ - Always include README.md with usage examples
119
+ - For JS actions, commit compiled `dist/` (don't gitignore)
120
+
121
+ ---
122
+
123
+ ## Versioning
124
+
125
+ ### Semantic Versioning
126
+
127
+ Use MAJOR.MINOR.PATCH format:
128
+ - **MAJOR:** Breaking changes
129
+ - **MINOR:** New features (backward compatible)
130
+ - **PATCH:** Bug fixes
131
+
132
+ ### Git Tags
133
+
134
+ ```bash
135
+ # Create version tag
136
+ git tag -a v1.0.0 -m "Release version 1.0.0"
137
+ git push origin v1.0.0
138
+
139
+ # Update major version tag (v1 → latest v1.x.x)
140
+ git tag -fa v1 -m "Update v1 to v1.0.0"
141
+ git push origin v1 --force
142
+ ```
143
+
144
+ ### Tag Strategy
145
+
146
+ Maintain multiple tag levels:
147
+ - **Specific:** `v1.0.0`, `v1.0.1`, `v1.1.0`
148
+ - **Major:** `v1`, `v2` (points to latest minor/patch)
149
+
150
+ **User options:**
151
+ ```yaml
152
+ - uses: owner/action@v1.0.0 # Pinned to exact version
153
+ - uses: owner/action@v1 # Latest v1.x.x
154
+ - uses: owner/action@abc123 # Pinned to SHA (most secure)
155
+ ```
156
+
157
+ ### Release Workflow
158
+
159
+ ```yaml
160
+ # .github/workflows/release.yml
161
+ name: Release
162
+
163
+ on:
164
+ push:
165
+ tags: ['v*']
166
+
167
+ permissions:
168
+ contents: write
169
+
170
+ jobs:
171
+ release:
172
+ runs-on: ubuntu-latest
173
+ steps:
174
+ - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
175
+
176
+ - name: Create GitHub Release
177
+ run: gh release create ${{ github.ref_name }} --generate-notes
178
+ env:
179
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
180
+
181
+ - name: Update major version tag
182
+ run: |
183
+ MAJOR=$(echo ${{ github.ref_name }} | cut -d. -f1)
184
+ git tag -fa $MAJOR -m "Update $MAJOR tag"
185
+ git push origin $MAJOR --force
186
+ ```
187
+
188
+ ### Breaking Changes
189
+
190
+ When introducing breaking changes:
191
+ 1. Document in CHANGELOG.md and release notes
192
+ 2. Increment MAJOR version
193
+ 3. Provide migration guide
194
+ 4. Consider maintaining previous major version branch
195
+
196
+ ---
197
+
198
+ ## Publishing to Marketplace
199
+
200
+ ### Requirements
201
+
202
+ 1. **Repository must be public**
203
+ 2. **action.yml in repository root**
204
+ 3. **Branding metadata** (icon and color)
205
+ 4. **README.md** with usage examples
206
+ 5. **Semantic version tags**
207
+
208
+ ### Marketplace Listing
209
+
210
+ 1. Go to repository Settings → Actions → "Create Action"
211
+ 2. Or visit: `https://github.com/marketplace/actions/your-action`
212
+ 3. Fill in marketplace details
213
+ 4. Submit for review
214
+
215
+ ### Pre-release Testing
216
+
217
+ Use pre-release versions for testing:
218
+ ```bash
219
+ git tag -a v1.0.0-beta.1 -m "Beta release"
220
+ git push origin v1.0.0-beta.1
221
+ ```
222
+
223
+ ---
224
+
225
+ ## Action Templates
226
+
227
+ ### Composite Action Template
228
+
229
+ ```yaml
230
+ name: '[Action Name]'
231
+ description: '[Brief description]'
232
+ author: '[Author]'
233
+
234
+ branding:
235
+ icon: 'check-circle'
236
+ color: 'green'
237
+
238
+ inputs:
239
+ input-name:
240
+ description: '[Description]'
241
+ required: true
242
+ default: '[default value]'
243
+
244
+ outputs:
245
+ output-name:
246
+ description: '[Description]'
247
+ value: ${{ steps.step-id.outputs.value }}
248
+
249
+ runs:
250
+ using: 'composite'
251
+ steps:
252
+ - name: Step name
253
+ id: step-id
254
+ shell: bash
255
+ run: echo "value=result" >> $GITHUB_OUTPUT
256
+ ```
257
+
258
+ ### Docker Action Template
259
+
260
+ ```yaml
261
+ name: '[Action Name]'
262
+ description: '[Brief description]'
263
+ author: '[Author]'
264
+
265
+ branding:
266
+ icon: 'box'
267
+ color: 'blue'
268
+
269
+ inputs:
270
+ input-name:
271
+ description: '[Description]'
272
+ required: true
273
+
274
+ outputs:
275
+ output-name:
276
+ description: '[Description]'
277
+
278
+ runs:
279
+ using: 'docker'
280
+ image: 'Dockerfile'
281
+ args:
282
+ - ${{ inputs.input-name }}
283
+ ```
284
+
285
+ ### JavaScript Action Template
286
+
287
+ ```yaml
288
+ name: '[Action Name]'
289
+ description: '[Brief description]'
290
+ author: '[Author]'
291
+
292
+ branding:
293
+ icon: 'code'
294
+ color: 'purple'
295
+
296
+ inputs:
297
+ github-token:
298
+ description: 'GitHub token for API access'
299
+ required: true
300
+
301
+ outputs:
302
+ result:
303
+ description: 'Action result'
304
+
305
+ runs:
306
+ using: 'node20'
307
+ main: 'dist/index.js'
308
+ ```
309
+
310
+ ---
311
+
312
+ ## Summary
313
+
314
+ | Aspect | Recommendation |
315
+ |--------|---------------|
316
+ | Location | `.github/actions/` for local, separate repo for shared |
317
+ | Branding | Required for Marketplace, recommended for all |
318
+ | Versioning | Semantic versions with major tag updates |
319
+ | Documentation | README.md with examples, CHANGELOG.md |
320
+ | Security | Pin to SHA, minimal permissions |