opencode-skills-collection 4.0.7 → 4.0.9
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/bundled-skills/.antigravity-install-manifest.json +19 -1
- package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +22 -8
- package/bundled-skills/antigravity-maintainer-batch-release/agents/openai.yaml +4 -0
- package/bundled-skills/anywrite/SKILL.md +18 -8
- package/bundled-skills/cloudflare-security-audit/SKILL.md +5 -3
- package/bundled-skills/cloudflare-security-audit/references/RECONNAISSANCE.md +2 -0
- package/bundled-skills/docs/integrations/jetski-cortex.md +3 -3
- package/bundled-skills/docs/integrations/jetski-gemini-loader/README.md +1 -1
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-preview-profile.md +2 -2
- package/bundled-skills/docs/maintainers/aas-agent-first-control-plane-v1-worklog.md +1 -1
- package/bundled-skills/docs/maintainers/merge-batch.md +3 -3
- package/bundled-skills/docs/maintainers/merging-prs.md +13 -17
- package/bundled-skills/docs/maintainers/pr-autonomy.md +2 -2
- package/bundled-skills/docs/maintainers/release-process.md +17 -2
- package/bundled-skills/docs/maintainers/repo-growth-seo.md +3 -3
- package/bundled-skills/docs/maintainers/skills-update-guide.md +1 -1
- package/bundled-skills/docs/users/aas-core.md +38 -3
- package/bundled-skills/docs/users/bundles.md +1 -1
- package/bundled-skills/docs/users/claude-code-skills.md +1 -1
- package/bundled-skills/docs/users/faq.md +2 -0
- package/bundled-skills/docs/users/gemini-cli-skills.md +1 -1
- package/bundled-skills/docs/users/kiro-integration.md +1 -1
- package/bundled-skills/docs/users/usage.md +4 -4
- package/bundled-skills/docs/users/visual-guide.md +4 -4
- package/bundled-skills/docs/vietnamese/README.vi.md +4 -4
- package/bundled-skills/hf-cloud-aws-context-discovery/SKILL.md +96 -0
- package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +3 -3
- package/bundled-skills/markstream-angular/SKILL.md +76 -0
- package/bundled-skills/markstream-custom-components/SKILL.md +74 -0
- package/bundled-skills/markstream-custom-components/references/patterns.md +14 -0
- package/bundled-skills/markstream-install/SKILL.md +3 -1
- package/bundled-skills/markstream-migration/SKILL.md +78 -0
- package/bundled-skills/markstream-migration/references/adoption-checklist.md +10 -0
- package/bundled-skills/markstream-nuxt/SKILL.md +71 -0
- package/bundled-skills/markstream-react/SKILL.md +74 -0
- package/bundled-skills/markstream-svelte/SKILL.md +68 -0
- package/bundled-skills/markstream-vue/SKILL.md +71 -0
- package/bundled-skills/markstream-vue2/SKILL.md +70 -0
- package/bundled-skills/markstream-vue2-cli/SKILL.md +70 -0
- package/bundled-skills/markstream-vue2-vite/SKILL.md +69 -0
- package/bundled-skills/n8n-agents/SKILL.md +301 -0
- package/bundled-skills/n8n-agents/references/CHAT_AGENT_PATTERNS.md +228 -0
- package/bundled-skills/n8n-agents/references/EXAMPLES.md +432 -0
- package/bundled-skills/n8n-agents/references/HUMAN_REVIEW.md +180 -0
- package/bundled-skills/n8n-agents/references/MEMORY.md +139 -0
- package/bundled-skills/n8n-agents/references/RAG.md +102 -0
- package/bundled-skills/n8n-agents/references/STRUCTURED_OUTPUT.md +163 -0
- package/bundled-skills/n8n-agents/references/SUBWORKFLOW_AS_TOOL.md +199 -0
- package/bundled-skills/n8n-agents/references/SYSTEM_PROMPT.md +151 -0
- package/bundled-skills/n8n-agents/references/TOOLS.md +199 -0
- package/bundled-skills/n8n-binary-and-data/SKILL.md +269 -0
- package/bundled-skills/n8n-binary-and-data/references/AGENT_TOOL_BINARY.md +227 -0
- package/bundled-skills/n8n-binary-and-data/references/BINARY_BASICS.md +187 -0
- package/bundled-skills/n8n-binary-and-data/references/CDN_REQUIREMENT.md +109 -0
- package/bundled-skills/n8n-binary-and-data/references/MERGE_FOR_CONTEXT.md +130 -0
- package/bundled-skills/n8n-code-tool/SKILL.md +358 -0
- package/bundled-skills/n8n-code-tool/references/ERROR_PATTERNS.md +178 -0
- package/bundled-skills/n8n-code-tool/references/INPUT_SCHEMA.md +132 -0
- package/bundled-skills/n8n-error-handling/SKILL.md +289 -0
- package/bundled-skills/n8n-error-handling/references/API_WORKFLOWS.md +256 -0
- package/bundled-skills/n8n-error-handling/references/ERROR_WORKFLOWS.md +178 -0
- package/bundled-skills/n8n-error-handling/references/NODE_ERROR_OUTPUTS.md +171 -0
- package/bundled-skills/n8n-error-handling/references/RESPONSE_SHAPES.md +220 -0
- package/bundled-skills/n8n-multi-instance/SKILL.md +208 -0
- package/bundled-skills/n8n-node-configuration/references/NODE_FAMILY_GOTCHAS.md +241 -0
- package/bundled-skills/n8n-subworkflows/SKILL.md +271 -0
- package/bundled-skills/n8n-subworkflows/references/NAMING_AND_DISCOVERY.md +130 -0
- package/bundled-skills/n8n-subworkflows/references/SUBWORKFLOW_PATTERNS.md +147 -0
- package/bundled-skills/pptx-deck-creation/SKILL.md +2 -0
- package/bundled-skills/pptx-deck-creation/references/design-profiles.md +2 -0
- package/bundled-skills/sshepherd/SKILL.md +16 -6
- package/bundled-skills/using-n8n-mcp-skills/SKILL.md +193 -0
- package/bundled-skills/weaviate-cookbooks/references/pdf_multimodal_rag.md +12 -6
- package/package.json +1 -1
- package/skills_index.json +596 -13
|
@@ -17,7 +17,7 @@ Configure AAS Core for Claude Code, describe the task and constraints, let Claud
|
|
|
17
17
|
- It lets Claude search the verified local catalog without loading the full library into context.
|
|
18
18
|
- It preserves Claude's exact selection without using metadata as an eligibility gate.
|
|
19
19
|
- It keeps MCP discovery read-only and CLI changes approval-gated.
|
|
20
|
-
- It includes 1,
|
|
20
|
+
- It includes 1,987+ skills instead of a narrow single-domain starter pack.
|
|
21
21
|
- It supports the standard `.claude/skills/` path and the Claude Code plugin marketplace flow.
|
|
22
22
|
- It also ships generated bundle plugins so teams can install focused packs like `Essentials` or `Security Developer` from the marketplace metadata.
|
|
23
23
|
- It includes onboarding docs, bundles, and workflows so new users do not need to guess where to begin.
|
|
@@ -231,6 +231,8 @@ npx agentic-awesome-skills
|
|
|
231
231
|
|
|
232
232
|
If you have an older clone created around the removed symlink workaround, reinstall into a fresh directory or rerun `npx agentic-awesome-skills`.
|
|
233
233
|
|
|
234
|
+
For AAS Core MCP configuration, native Windows 10 and 11 with Node.js 22 are supported preview targets. A preview failure with `AAS_ADAPTER_WINDOWS_ACL_FAILED` refers to the Codex/Claude configuration directory or file checked with PowerShell `Get-Acl`, not the AAS cache and not `icacls`. Read the returned `path`, `phase`, `status`, and bounded diagnostic; correct the named configuration-path ownership problem, then rerun preview. Never add `--approve` before an approval digest is produced. See the [AAS Core Windows notes](aas-core.md#native-windows-and-codex).
|
|
235
|
+
|
|
234
236
|
### I hit a truncation or context crash loop on Windows. How do I recover?
|
|
235
237
|
|
|
236
238
|
If Antigravity or a Jetski/Cortex-based host keeps reopening into:
|
|
@@ -12,7 +12,7 @@ Install into the Gemini skills path, then ask Gemini to apply one skill at a tim
|
|
|
12
12
|
|
|
13
13
|
- It installs directly into the expected Gemini skills path.
|
|
14
14
|
- It includes both core software engineering skills and deeper agent/LLM-oriented skills.
|
|
15
|
-
- It helps new users get started with bundles and workflows rather than forcing a cold start from 1,
|
|
15
|
+
- It helps new users get started with bundles and workflows rather than forcing a cold start from 1,987+ files.
|
|
16
16
|
- It is useful whether you want a broad internal skill library or a single repo to test many workflows quickly.
|
|
17
17
|
|
|
18
18
|
## Install Gemini CLI Skills
|
|
@@ -18,7 +18,7 @@ Kiro is AWS's agentic AI IDE that combines:
|
|
|
18
18
|
|
|
19
19
|
Kiro's agentic capabilities are enhanced by skills that provide:
|
|
20
20
|
|
|
21
|
-
- **Domain expertise** across 1,
|
|
21
|
+
- **Domain expertise** across 1,987+ specialized areas
|
|
22
22
|
- **Best practices** from Anthropic, OpenAI, Google, Microsoft, and AWS
|
|
23
23
|
- **Workflow automation** for common development tasks
|
|
24
24
|
- **AWS-specific patterns** for serverless, infrastructure, and cloud architecture
|
|
@@ -21,7 +21,7 @@ use compose_stack with a project profile, inspect the schema 2 manifest returned
|
|
|
21
21
|
in memory, and do not apply it.
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
The agent must use `search_skills` and `get_skill` across the complete catalog, build a capability-to-skill coverage map, continue searching while a primary capability remains uncovered, choose the exact IDs itself, call `compose_stack`, then check the in-memory proposal with `inspect_stack` before presenting it.
|
|
24
|
+
The agent must use `search_skills` and `get_skill` across the complete catalog, build a capability-to-skill coverage map, continue searching while a primary capability remains uncovered, choose the exact IDs itself, call `compose_stack`, then check the in-memory proposal with `inspect_stack` before presenting it. Every current catalog skill remains individually searchable, readable, and selectable. A client or the CLI can persist the reviewed `aas-stack.json`; an audit-enabled flow can then call `export_selection_evidence`, validate it with `inspect_selection_evidence`, and atomically publish the manifest and separate `aas-selection-evidence.json` sidecar in an `artifact-dir`. Use `aas stack plan` to preview the exact operations without materializing skills or managed state in the target.
|
|
25
25
|
|
|
26
26
|
Selection evidence contains the raw `search_skills` queries observed during the MCP session. Do not place secrets, credentials, private source text, or personal data in catalog queries.
|
|
27
27
|
|
|
@@ -39,7 +39,7 @@ If you came in through a **Claude Code** or **Codex** plugin instead of AAS Core
|
|
|
39
39
|
|
|
40
40
|
When you ran `npx agentic-awesome-skills` or cloned the repository, you:
|
|
41
41
|
|
|
42
|
-
✅ **Downloaded 1,
|
|
42
|
+
✅ **Downloaded 1,987+ skill files** to your computer (default: `~/.agents/skills/`; or a custom path like `~/.agent/skills/` if you used `--path`)
|
|
43
43
|
✅ **Made them available** to your AI assistant
|
|
44
44
|
❌ **Did NOT enable them all automatically** (they're just sitting there, waiting)
|
|
45
45
|
|
|
@@ -231,7 +231,7 @@ Let's actually use a skill right now. Follow these steps:
|
|
|
231
231
|
|
|
232
232
|
## Direct-install Step 5: Pick Skills Manually
|
|
233
233
|
|
|
234
|
-
Don't try to use all 1,
|
|
234
|
+
Don't try to use all 1,987+ skills at once. Here's a sensible approach:
|
|
235
235
|
|
|
236
236
|
If you want a tool-specific starting point before choosing skills, use:
|
|
237
237
|
|
|
@@ -362,7 +362,7 @@ Usually no, but if your AI doesn't recognize a skill:
|
|
|
362
362
|
|
|
363
363
|
### "Can I load all skills into the model at once?"
|
|
364
364
|
|
|
365
|
-
No. Even though you have 1,
|
|
365
|
+
No. Even though you have 1,987+ skills installed locally, you should **not** concatenate every `SKILL.md` into a single system prompt or context block.
|
|
366
366
|
|
|
367
367
|
The intended pattern is:
|
|
368
368
|
|
|
@@ -40,7 +40,7 @@ agentic-awesome-skills/
|
|
|
40
40
|
├── 📄 CONTRIBUTING.md ← Contributor workflow
|
|
41
41
|
├── 📄 CATALOG.md ← Full generated catalog
|
|
42
42
|
│
|
|
43
|
-
├── 📁 skills/ ← 1,
|
|
43
|
+
├── 📁 skills/ ← 1,987+ skills live here
|
|
44
44
|
│ │
|
|
45
45
|
│ ├── 📁 brainstorming/
|
|
46
46
|
│ │ └── 📄 SKILL.md ← Skill definition
|
|
@@ -53,7 +53,7 @@ agentic-awesome-skills/
|
|
|
53
53
|
│ │ └── 📁 2d-games/
|
|
54
54
|
│ │ └── 📄 SKILL.md ← Nested skills also supported
|
|
55
55
|
│ │
|
|
56
|
-
│ └── ... (1,
|
|
56
|
+
│ └── ... (1,987+ total)
|
|
57
57
|
│
|
|
58
58
|
├── 📁 apps/
|
|
59
59
|
│ └── 📁 web-app/ ← Interactive browser
|
|
@@ -106,7 +106,7 @@ agentic-awesome-skills/
|
|
|
106
106
|
|
|
107
107
|
```
|
|
108
108
|
┌─────────────────────────┐
|
|
109
|
-
│ 1,
|
|
109
|
+
│ 1,987+ SKILLS │
|
|
110
110
|
└────────────┬────────────┘
|
|
111
111
|
│
|
|
112
112
|
┌────────────────────────┼────────────────────────┐
|
|
@@ -207,7 +207,7 @@ If you want a workspace-style manual install instead, cloning into `.agent/skill
|
|
|
207
207
|
│ ├── 📁 brainstorming/ │
|
|
208
208
|
│ ├── 📁 stripe-integration/ │
|
|
209
209
|
│ ├── 📁 react-best-practices/ │
|
|
210
|
-
│ └── ... (1,
|
|
210
|
+
│ └── ... (1,987+ total) │
|
|
211
211
|
└─────────────────────────────────────────┘
|
|
212
212
|
```
|
|
213
213
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Codex hoặc Claude tự kiểm tra dự án; AAS không quét repository. Agent tìm kiếm catalog cục bộ đầy đủ theo thứ tự ổn định, tự đánh giá kết quả không có điểm số hay xếp hạng, rồi gửi `profile` cùng chính xác các ID đã chọn tới `compose_stack`. AAS Core ghi nhận lựa chọn trong `aas-stack.json` schema 2; CLI xác thực manifest và tạo kế hoạch preview bất biến trước khi thay đổi kỹ năng.
|
|
6
6
|
|
|
7
|
-
> **Ranh giới phát hành:**
|
|
7
|
+
> **Ranh giới phát hành:** Dòng 15.x hiện tại bao gồm AAS Core. Chỉ dùng một phiên bản chính xác có release notes tuyên bố rõ rằng nó bao gồm Core. Luồng preview được hỗ trợ dừng sau khi xem kế hoạch; `apply` và `recover` vẫn mang tính thử nghiệm. [Tìm hiểu AAS Core](AAS_CORE.vi.md).
|
|
8
8
|
|
|
9
9
|
[](https://opensource.org/licenses/MIT)
|
|
10
10
|
[](https://claude.ai)
|
|
@@ -15,7 +15,7 @@ Codex hoặc Claude tự kiểm tra dự án; AAS không quét repository. Agent
|
|
|
15
15
|
[](https://github.com/opencode-ai/opencode)
|
|
16
16
|
[](https://github.com/sickn33/agentic-awesome-skills)
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
Các playbook `SKILL.md`, plugin chuyên biệt, bundle, workflow và installer trực tiếp vẫn rất quan trọng. Chúng là lớp nội dung, tuyển chọn, phân phối và tương thích xung quanh AAS Core, không phải sản phẩm chính cạnh tranh với Core:
|
|
19
19
|
|
|
20
20
|
- 🟣 **Claude Code** (Anthropic CLI)
|
|
21
21
|
- 🔵 **Gemini CLI** (Google DeepMind)
|
|
@@ -26,7 +26,7 @@ Catalog gồm **1,968+ kỹ năng `SKILL.md`**, plugin chuyên biệt, bundle, w
|
|
|
26
26
|
- ⚪ **OpenCode** (Mã nguồn mở CLI)
|
|
27
27
|
- 🟡 **Kiro CLI / IDE** và **AdaL CLI**
|
|
28
28
|
|
|
29
|
-
**Ranh giới phiên bản:** Dòng 14.x là baseline phân phối kỹ năng trực tiếp và không chứa AAS Core;
|
|
29
|
+
**Ranh giới phiên bản:** Dòng 14.x là baseline phân phối kỹ năng trực tiếp và không chứa AAS Core; dòng 15.x hiện tại chứa Core. GitHub là nguồn chuẩn cho Core, catalog, plugin và tài liệu; website được host chỉ là bề mặt duyệt catalog và review trong trình duyệt, không phải control plane được host.
|
|
30
30
|
|
|
31
31
|
### 1. 🐣 Bối cảnh: Đây là gì?
|
|
32
32
|
|
|
@@ -59,7 +59,7 @@ Repository được tổ chức thành các lĩnh vực chuyên biệt để bi
|
|
|
59
59
|
|
|
60
60
|
[Xem các Gói khởi đầu tại docs/vietnamese/BUNDLES.md](BUNDLES.vi.md) để tìm bộ công cụ hoàn hảo cho vai trò của bạn.
|
|
61
61
|
|
|
62
|
-
## Duyệt
|
|
62
|
+
## Duyệt kỹ năng
|
|
63
63
|
|
|
64
64
|
Chúng tôi đã chuyển danh sách đầy đủ các kỹ năng sang một danh mục riêng biệt để giữ cho file README này gọn gàng.
|
|
65
65
|
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: hf-cloud-aws-context-discovery
|
|
3
|
+
description: "Discover the effective local AWS profile, region, account, and caller identity before any AWS task without exposing credentials."
|
|
4
|
+
risk: safe
|
|
5
|
+
source: https://github.com/huggingface/skills/tree/main/skills/hf-cloud-aws-context-discovery
|
|
6
|
+
source_repo: huggingface/skills
|
|
7
|
+
source_type: official
|
|
8
|
+
date_added: "2026-07-21"
|
|
9
|
+
author: Hugging Face
|
|
10
|
+
license: Apache-2.0
|
|
11
|
+
license_source: https://github.com/huggingface/skills/blob/main/LICENSE
|
|
12
|
+
tags: [hugging-face, aws, credentials, discovery, cloud]
|
|
13
|
+
tools: [claude, codex, cursor]
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
# AWS Context Discovery
|
|
17
|
+
|
|
18
|
+
Before doing any AWS work, inspect only masked AWS CLI metadata. Don't guess the region, and don't ask the user for things the CLI already answers. Never open or print `~/.aws/credentials`, credential-process output, secret environment variables, access keys, session tokens, or SSO token caches.
|
|
19
|
+
|
|
20
|
+
## When to Use
|
|
21
|
+
|
|
22
|
+
- Establish the effective AWS profile, region, account, and caller before AWS work.
|
|
23
|
+
- Diagnose expired SSO sessions, missing profiles, or configuration overrides.
|
|
24
|
+
- Provide verified context to later SageMaker planning and deployment skills.
|
|
25
|
+
|
|
26
|
+
## What to discover
|
|
27
|
+
|
|
28
|
+
Run these at the start of the AWS work and remember the results for the rest of the session.
|
|
29
|
+
|
|
30
|
+
### 1. Active profile
|
|
31
|
+
|
|
32
|
+
Use a profile the user explicitly named, otherwise use the profile identified by masked AWS CLI metadata. If the named profile is absent from `aws configure list-profiles`, surface that clearly.
|
|
33
|
+
|
|
34
|
+
### 2. Region
|
|
35
|
+
|
|
36
|
+
Resolution order — stop at the first one that produces a value:
|
|
37
|
+
1. Region the user explicitly named in this conversation
|
|
38
|
+
2. Region reported by `aws configure list --profile "$profile"`
|
|
39
|
+
3. Region reported by `aws configure get region --profile "$profile"`
|
|
40
|
+
5. Ask the user — but only after the first four have failed
|
|
41
|
+
|
|
42
|
+
Do not fall back to `us-east-1` or any other hardcoded default.
|
|
43
|
+
|
|
44
|
+
### 3. Credentials, account ID, caller ARN
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
aws sts get-caller-identity --profile "$profile" --region "$region"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Three purposes in one call: confirms credentials are valid (stop if not), returns the `Account` ID (needed for ARN construction), returns the `Arn` of the caller.
|
|
51
|
+
|
|
52
|
+
### 4. Identify SSO / assumed-role principals
|
|
53
|
+
|
|
54
|
+
The `Arn` field tells you what kind of principal this is. The pattern matters because it determines what IAM operations the caller can do.
|
|
55
|
+
|
|
56
|
+
| ARN pattern | Type | IAM write capability |
|
|
57
|
+
|---|---|---|
|
|
58
|
+
| `arn:aws:iam::<acct>:user/<name>` | IAM user | Depends on attached policies |
|
|
59
|
+
| `arn:aws:sts::<acct>:assumed-role/AWSReservedSSO_<...>/<email>` | **SSO assumed-role** | Typically **none** — can't create/modify IAM roles |
|
|
60
|
+
| `arn:aws:sts::<acct>:assumed-role/<role>/<session>` | Regular assumed-role | Depends on the role |
|
|
61
|
+
|
|
62
|
+
**If the caller is SSO**, surface this immediately before later skills hit `iam:CreateRole` and fail:
|
|
63
|
+
|
|
64
|
+
> Heads up: you're authenticated via SSO (`AWSReservedSSO_<PermissionSet>_...`). SSO principals usually can't create IAM roles directly. If we need a SageMaker execution role, I'll look for an existing one first — if none exists, you'll need to ask whoever manages your AWS access to create one.
|
|
65
|
+
|
|
66
|
+
This is the highest-leverage thing this skill does. Surfacing it now turns a confusing mid-deployment error into a five-second conversation.
|
|
67
|
+
|
|
68
|
+
## Commands to run
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Profiles and masked effective metadata; never read credential files directly
|
|
72
|
+
aws configure list-profiles
|
|
73
|
+
aws configure list --profile "$profile"
|
|
74
|
+
aws configure get region --profile "$profile"
|
|
75
|
+
|
|
76
|
+
# Validate credentials and get identity
|
|
77
|
+
aws sts get-caller-identity --profile "$profile" --region "$region"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
`aws configure list` masks credential values and identifies their source. Use these metadata commands instead of parsing AWS files or inspecting secret-bearing environment variables. If the CLI cannot resolve a profile or region without exposing credentials, stop and ask the user for the non-secret profile or region value.
|
|
81
|
+
|
|
82
|
+
## What to report back
|
|
83
|
+
|
|
84
|
+
One or two lines, not a wall of text:
|
|
85
|
+
|
|
86
|
+
> Working with profile `my-profile` in `eu-west-1`, account `123456789012`. You're authenticated via SSO, so we'll need to use an existing IAM role rather than create one.
|
|
87
|
+
|
|
88
|
+
Don't ask the user to confirm the region you just read from their config — they configured it; that is the confirmation.
|
|
89
|
+
|
|
90
|
+
If something is wrong (credentials expired, profile doesn't exist, no region anywhere), stop and surface the specific error before continuing.
|
|
91
|
+
|
|
92
|
+
## Limitations
|
|
93
|
+
|
|
94
|
+
- Discovery may reveal account IDs, role ARNs, or profile names; report only what the task needs and never expose secrets or session tokens.
|
|
95
|
+
- STS identity checks require network access and valid credentials.
|
|
96
|
+
- A valid identity does not imply permission to change resources.
|
|
@@ -336,9 +336,9 @@
|
|
|
336
336
|
}
|
|
337
337
|
},
|
|
338
338
|
"node_modules/body-parser": {
|
|
339
|
-
"version": "1.20.
|
|
340
|
-
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.
|
|
341
|
-
"integrity": "sha512-
|
|
339
|
+
"version": "1.20.6",
|
|
340
|
+
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.6.tgz",
|
|
341
|
+
"integrity": "sha512-p5tAzS57i5MV9fZFDj9LeIiTZEufbSe2eDozP+ElheSUq1m74CRq1jI4mYNDdVs9vQztXFLuk/Gd6BWTdwRJ5g==",
|
|
342
342
|
"license": "MIT",
|
|
343
343
|
"dependencies": {
|
|
344
344
|
"bytes": "~3.1.2",
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: markstream-angular
|
|
3
|
+
description: "Integrate the alpha markstream-angular renderer into Angular 20+ applications with standalone components, signals, safe HTML defaults, and optional peer features."
|
|
4
|
+
category: frontend
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/Simon-He95/markstream-vue/tree/main/.agents/skills/markstream-angular
|
|
7
|
+
source_repo: Simon-He95/markstream-vue
|
|
8
|
+
source_type: official
|
|
9
|
+
date_added: "2026-07-21"
|
|
10
|
+
author: Simon-He95
|
|
11
|
+
tags: [angular, markdown, streaming, ai-chat, frontend]
|
|
12
|
+
tools: [claude, cursor, gemini, codex]
|
|
13
|
+
license: MIT
|
|
14
|
+
license_source: https://github.com/Simon-He95/markstream-vue/blob/main/license
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Markstream Angular
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Add Markstream to Angular 20+ while preserving standalone-component patterns, signal-friendly bindings, safe rendering defaults, and explicit optional dependencies. Use `markstream-install` for framework selection; use this skill once Angular is confirmed.
|
|
22
|
+
|
|
23
|
+
## When to Use
|
|
24
|
+
|
|
25
|
+
Use for Angular-specific standalone imports, CSS, signals, custom tags or components, streaming state, and optional peers. Do not use below Angular 20 or when the application cannot accept an alpha renderer API.
|
|
26
|
+
|
|
27
|
+
## Workflow
|
|
28
|
+
|
|
29
|
+
Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.
|
|
30
|
+
|
|
31
|
+
1. Confirm Angular 20+ and record that `markstream-angular` is alpha.
|
|
32
|
+
2. Install the package plus only requested peers. Import `markstream-angular/index.css`; add KaTeX CSS only for math.
|
|
33
|
+
3. Import `MarkstreamAngularComponent` into the standalone component's `imports`.
|
|
34
|
+
4. Start with `[content]` and `[smoothStreaming]="'auto'"`. Use `nodes` plus `final` only when another layer owns the AST.
|
|
35
|
+
5. For live chat use `[fade]="false"` and opt into `[typewriter]="true"`. On completion set `[final]="true"`, disable pacing/cursor, and enable fade only if desired.
|
|
36
|
+
6. Use `[customHtmlTags]` and `[customComponents]` only for trusted tag workflows.
|
|
37
|
+
7. Keep `[htmlPolicy]="'safe'"` and Mermaid strict mode unless a narrowly scoped trusted legacy surface requires otherwise.
|
|
38
|
+
8. Validate with the smallest Angular build, typecheck, or dev command.
|
|
39
|
+
|
|
40
|
+
## Example
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
import { Component, signal } from '@angular/core'
|
|
44
|
+
import { MarkstreamAngularComponent } from 'markstream-angular'
|
|
45
|
+
import 'markstream-angular/index.css'
|
|
46
|
+
|
|
47
|
+
@Component({
|
|
48
|
+
selector: 'app-answer',
|
|
49
|
+
standalone: true,
|
|
50
|
+
imports: [MarkstreamAngularComponent],
|
|
51
|
+
template: `
|
|
52
|
+
<markstream-angular
|
|
53
|
+
[content]="markdown()"
|
|
54
|
+
[final]="done()"
|
|
55
|
+
[fade]="done()"
|
|
56
|
+
[typewriter]="!done()"
|
|
57
|
+
[smoothStreaming]="done() ? false : 'auto'"
|
|
58
|
+
[htmlPolicy]="'safe'"
|
|
59
|
+
/>
|
|
60
|
+
`,
|
|
61
|
+
})
|
|
62
|
+
export class AnswerComponent {
|
|
63
|
+
markdown = signal('# Streaming answer')
|
|
64
|
+
done = signal(false)
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Limitations
|
|
69
|
+
|
|
70
|
+
- Requires Angular 20+ and an alpha package.
|
|
71
|
+
- Browser-heavy peers may need bundler or client-boundary work.
|
|
72
|
+
- This skill does not design the host chat architecture or visual system.
|
|
73
|
+
|
|
74
|
+
## Security & Safety Notes
|
|
75
|
+
|
|
76
|
+
Review dependency changes before installation. Never broaden HTML or Mermaid trust settings for untrusted model output.
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: markstream-custom-components
|
|
3
|
+
description: "Override Markstream node renderers and add trusted custom tags across Vue, React, Svelte, and Angular using scoped or renderer-local mappings."
|
|
4
|
+
category: frontend
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/Simon-He95/markstream-vue/tree/main/.agents/skills/markstream-custom-components
|
|
7
|
+
source_repo: Simon-He95/markstream-vue
|
|
8
|
+
source_type: official
|
|
9
|
+
date_added: "2026-07-21"
|
|
10
|
+
author: Simon-He95
|
|
11
|
+
tags: [markdown, components, vue, react, svelte, angular]
|
|
12
|
+
tools: [claude, cursor, gemini, codex]
|
|
13
|
+
license: MIT
|
|
14
|
+
license_source: https://github.com/Simon-He95/markstream-vue/blob/main/license
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Markstream Custom Components
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Customize specific Markstream nodes or trusted custom tags without replacing the parser or leaking global renderer state. Read [references/patterns.md](references/patterns.md) first.
|
|
22
|
+
|
|
23
|
+
## When to Use
|
|
24
|
+
|
|
25
|
+
Use to replace built-ins such as `image`, `link`, `code_block`, `mermaid`, or `inline_code`; render trusted tags such as `thinking`; or scope overrides to one renderer or app. Use parser transforms only when token or AST reshaping is required.
|
|
26
|
+
|
|
27
|
+
## Workflow
|
|
28
|
+
|
|
29
|
+
Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.
|
|
30
|
+
|
|
31
|
+
1. Classify the change as a built-in override, trusted tag, or parser transform.
|
|
32
|
+
2. Prefer scoped mappings. Vue, Vue 2, Svelte, and Angular can use `setCustomComponents(customId, mapping)`; Svelte and Angular can also pass renderer-local maps.
|
|
33
|
+
3. In React, prefer `streamingComponents` for parser-backed nodes and `htmlComponents` for sanitized attributes plus children.
|
|
34
|
+
4. Start with leaf nodes before containers that must preserve children.
|
|
35
|
+
5. For trusted tag bodies containing Markdown, use a nested renderer with the same allowlist. Do not add a second smooth-streaming loop.
|
|
36
|
+
6. Preserve node/loading props, identity keys, scope IDs, theme state, and preview-height estimates for async diagrams.
|
|
37
|
+
7. Remove temporary scoped registrations on cleanup and validate repeated and nested tags.
|
|
38
|
+
|
|
39
|
+
## Example
|
|
40
|
+
|
|
41
|
+
```tsx
|
|
42
|
+
import MarkdownRender, {
|
|
43
|
+
type NodeComponentProps,
|
|
44
|
+
setCustomComponents,
|
|
45
|
+
} from 'markstream-react'
|
|
46
|
+
import 'markstream-react/index.css'
|
|
47
|
+
|
|
48
|
+
function ThinkingNode({ node }: NodeComponentProps<any>) {
|
|
49
|
+
return <details><summary>Thinking</summary>{node.content}</details>
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
setCustomComponents('assistant-panel', { thinking: ThinkingNode })
|
|
53
|
+
|
|
54
|
+
export function Answer({ markdown }: { markdown: string }) {
|
|
55
|
+
return (
|
|
56
|
+
<MarkdownRender
|
|
57
|
+
content={markdown}
|
|
58
|
+
customId="assistant-panel"
|
|
59
|
+
customHtmlTags={['thinking']}
|
|
60
|
+
htmlPolicy="safe"
|
|
61
|
+
/>
|
|
62
|
+
)
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Limitations
|
|
67
|
+
|
|
68
|
+
- Component overrides cannot reproduce arbitrary remark/rehype transforms.
|
|
69
|
+
- Container overrides require careful child rendering and accessibility review.
|
|
70
|
+
- Framework registration APIs are not interchangeable.
|
|
71
|
+
|
|
72
|
+
## Security & Safety Notes
|
|
73
|
+
|
|
74
|
+
Treat custom HTML-like tags as trusted input only. Keep safe HTML enabled and do not pass unsanitized attributes into host components.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Override Patterns
|
|
2
|
+
|
|
3
|
+
| Key | Typical use |
|
|
4
|
+
|---|---|
|
|
5
|
+
| `image` | Lightboxes, captions, lazy loading |
|
|
6
|
+
| `link` | Routing, analytics, tooltips |
|
|
7
|
+
| `code_block` | Fenced code blocks |
|
|
8
|
+
| `mermaid`, `d2`, `infographic` | One diagram renderer |
|
|
9
|
+
| `inline_code` | Inline typography |
|
|
10
|
+
| `heading`, `paragraph`, `list_item` | Containers preserving children |
|
|
11
|
+
|
|
12
|
+
For Vue, Vue 2, Svelte, or Angular shared registration, allowlist the tag, register it under a scoped `customId`, and pass that scope to the renderer. Prefer renderer-local maps when sharing is unnecessary.
|
|
13
|
+
|
|
14
|
+
For React, use `streamingComponents` for parser-backed tags and `htmlComponents` for sanitized HTML-style props. When a tag body contains Markdown, use a nested renderer with the same allowlist and no independent pacing.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: markstream-install
|
|
3
3
|
description: "Install and configure Markstream streaming Markdown renderers for Vue, React, Svelte, Angular, Nuxt, Next.js, and Vue 2 applications."
|
|
4
4
|
category: frontend
|
|
5
|
-
risk:
|
|
5
|
+
risk: critical
|
|
6
6
|
source: https://github.com/Simon-He95/markstream-vue/tree/main/.agents/skills/markstream-install
|
|
7
7
|
source_repo: Simon-He95/markstream-vue
|
|
8
8
|
source_type: official
|
|
@@ -48,6 +48,8 @@ Do not select `markstream-vue` merely because the source repository has Vue in i
|
|
|
48
48
|
|
|
49
49
|
### 2. Install the smallest dependency set
|
|
50
50
|
|
|
51
|
+
Before installing or changing source files, preview the exact dependency and code changes and obtain explicit user approval. Do not switch package managers or replace an existing renderer implicitly.
|
|
52
|
+
|
|
51
53
|
Install exactly one framework package and preserve the repository's package manager. Add optional peers only when the requested UI uses their feature.
|
|
52
54
|
|
|
53
55
|
Examples:
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: markstream-migration
|
|
3
|
+
description: "Audit and migrate an existing Markdown renderer to Markstream while preserving custom renderers, security policy, streaming behavior, and explicit parity gaps."
|
|
4
|
+
category: frontend
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/Simon-He95/markstream-vue/tree/main/.agents/skills/markstream-migration
|
|
7
|
+
source_repo: Simon-He95/markstream-vue
|
|
8
|
+
source_type: official
|
|
9
|
+
date_added: "2026-07-21"
|
|
10
|
+
author: Simon-He95
|
|
11
|
+
tags: [markdown, migration, streaming, security, frontend]
|
|
12
|
+
tools: [claude, cursor, gemini, codex]
|
|
13
|
+
license: MIT
|
|
14
|
+
license_source: https://github.com/Simon-He95/markstream-vue/blob/main/license
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Markstream Migration
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Replace an existing Markdown renderer without silently dropping transforms, custom components, URL policy, raw-HTML behavior, or streaming semantics. Read [references/adoption-checklist.md](references/adoption-checklist.md) first.
|
|
22
|
+
|
|
23
|
+
## When to Use
|
|
24
|
+
|
|
25
|
+
Use when replacing `react-markdown`, `markdown-it`, `marked`, or another renderer; migrating node renderers; or choosing between Markstream `content`, smooth streaming, and `nodes`.
|
|
26
|
+
|
|
27
|
+
## Workflow
|
|
28
|
+
|
|
29
|
+
Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.
|
|
30
|
+
|
|
31
|
+
1. Inventory renderer imports, call sites, plugins, HTML policy, URL transforms, allowlists, custom renderers, CSS, and tests.
|
|
32
|
+
2. Classify the migration as direct, renderer-custom, plugin-heavy, or security-heavy.
|
|
33
|
+
3. Install the framework package and explicit CSS. Preserve visible behavior before optional features.
|
|
34
|
+
4. Map built-ins to scoped overrides; in React prefer renderer-local component maps.
|
|
35
|
+
5. Use trusted custom tags only for trusted content and reserve parse transforms for irreducible token/AST requirements.
|
|
36
|
+
6. Keep `content` with smooth streaming for ordinary token streams. Use `nodes` only for worker parsing, shared AST ownership, or structural transforms.
|
|
37
|
+
7. Preserve safe HTML and strict Mermaid defaults; scope and document any trusted legacy exception.
|
|
38
|
+
8. Run relevant builds and behavior tests. Report mappings, intentional differences, and unresolved review.
|
|
39
|
+
|
|
40
|
+
## Example
|
|
41
|
+
|
|
42
|
+
```tsx
|
|
43
|
+
// Before:
|
|
44
|
+
// import ReactMarkdown from 'react-markdown'
|
|
45
|
+
// return <ReactMarkdown>{markdown}</ReactMarkdown>
|
|
46
|
+
|
|
47
|
+
import MarkdownRender from 'markstream-react'
|
|
48
|
+
import 'markstream-react/index.css'
|
|
49
|
+
|
|
50
|
+
export function AssistantAnswer({
|
|
51
|
+
markdown,
|
|
52
|
+
isDone,
|
|
53
|
+
}: {
|
|
54
|
+
markdown: string
|
|
55
|
+
isDone: boolean
|
|
56
|
+
}) {
|
|
57
|
+
return (
|
|
58
|
+
<MarkdownRender
|
|
59
|
+
content={markdown}
|
|
60
|
+
final={isDone}
|
|
61
|
+
fade={isDone}
|
|
62
|
+
typewriter={!isDone}
|
|
63
|
+
smoothStreaming={isDone ? false : 'auto'}
|
|
64
|
+
htmlPolicy="safe"
|
|
65
|
+
/>
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Limitations
|
|
71
|
+
|
|
72
|
+
- Markstream cannot reproduce every remark, rehype, or markdown-it plugin automatically.
|
|
73
|
+
- Visual parity does not prove security or URL-policy parity.
|
|
74
|
+
- Large migrations may require staged conversion.
|
|
75
|
+
|
|
76
|
+
## Security & Safety Notes
|
|
77
|
+
|
|
78
|
+
Do not weaken sanitization for screenshot parity. Review dependencies, raw HTML, URL transforms, and trust boundaries explicitly.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Adoption Checklist
|
|
2
|
+
|
|
3
|
+
Search for `react-markdown`, `remarkPlugins`, `rehypePlugins`, `markdown-it`, `marked`, `rehypeRaw`, `skipHtml`, allow/deny lists, `urlTransform`, custom renderers, CSS, and tests.
|
|
4
|
+
|
|
5
|
+
- `direct`: plain renderer swap
|
|
6
|
+
- `renderer-custom`: custom components can become overrides
|
|
7
|
+
- `plugin-heavy`: transform chains need manual mapping
|
|
8
|
+
- `security-heavy`: HTML and URL policy need explicit review
|
|
9
|
+
|
|
10
|
+
Swap the package first, preserve CSS order, prefer scoped mappings, and adopt `nodes` only when another layer owns parsing or structural updates.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: markstream-nuxt
|
|
3
|
+
description: "Integrate markstream-vue into Nuxt 3 or 4 with SSR-safe client boundaries, renderer modes, explicit CSS, and browser-only optional peers."
|
|
4
|
+
category: frontend
|
|
5
|
+
risk: critical
|
|
6
|
+
source: https://github.com/Simon-He95/markstream-vue/tree/main/.agents/skills/markstream-nuxt
|
|
7
|
+
source_repo: Simon-He95/markstream-vue
|
|
8
|
+
source_type: official
|
|
9
|
+
date_added: "2026-07-21"
|
|
10
|
+
author: Simon-He95
|
|
11
|
+
tags: [nuxt, vue, ssr, markdown, streaming]
|
|
12
|
+
tools: [claude, cursor, gemini, codex]
|
|
13
|
+
license: MIT
|
|
14
|
+
license_source: https://github.com/Simon-He95/markstream-vue/blob/main/license
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Markstream Nuxt
|
|
18
|
+
|
|
19
|
+
## Overview
|
|
20
|
+
|
|
21
|
+
Integrate `markstream-vue` into Nuxt while keeping hydration, browser-only peers, workers, and streaming behavior on the correct side of SSR boundaries.
|
|
22
|
+
|
|
23
|
+
## When to Use
|
|
24
|
+
|
|
25
|
+
Use for Nuxt 3 or 4 pages, components, or plugins. Use `markstream-vue` for non-Nuxt Vue applications and `markstream-install` when the framework is not yet known.
|
|
26
|
+
|
|
27
|
+
## Workflow
|
|
28
|
+
|
|
29
|
+
Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.
|
|
30
|
+
|
|
31
|
+
1. Confirm Nuxt 3 or 4 and install only requested peers.
|
|
32
|
+
2. Put browser-only peers behind `<ClientOnly>`, `.client` plugins, dynamic imports, or guarded initialization.
|
|
33
|
+
3. Import `markstream-vue/index.css` explicitly from a client-safe shell or plugin.
|
|
34
|
+
4. Start with `content`: `mode="chat"` for AI streams, `docs` for rich documents, and `minimal` for lightweight non-chat surfaces.
|
|
35
|
+
5. Keep smooth streaming in `auto` mode for SSR; do not force `true` on first-screen server content.
|
|
36
|
+
6. When a chat row completes, keep its mode stable, set `final`, disable pacing/cursor, and enable fade only if desired.
|
|
37
|
+
7. Keep HTML safe and Mermaid strict. Put optional code, diagram, and worker runtimes behind client boundaries.
|
|
38
|
+
8. Validate build/typecheck, hydration, and one incremental client update.
|
|
39
|
+
|
|
40
|
+
## Example
|
|
41
|
+
|
|
42
|
+
```vue
|
|
43
|
+
<script setup lang="ts">
|
|
44
|
+
import MarkdownRender from 'markstream-vue'
|
|
45
|
+
import 'markstream-vue/index.css'
|
|
46
|
+
|
|
47
|
+
defineProps<{ markdown: string; done: boolean }>()
|
|
48
|
+
</script>
|
|
49
|
+
|
|
50
|
+
<template>
|
|
51
|
+
<MarkdownRender
|
|
52
|
+
mode="chat"
|
|
53
|
+
:content="markdown"
|
|
54
|
+
:final="done"
|
|
55
|
+
:fade="done"
|
|
56
|
+
:typewriter="!done"
|
|
57
|
+
:smooth-streaming="done ? false : 'auto'"
|
|
58
|
+
html-policy="safe"
|
|
59
|
+
/>
|
|
60
|
+
</template>
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Limitations
|
|
64
|
+
|
|
65
|
+
- Browser-only peers cannot run during SSR.
|
|
66
|
+
- Hydration depends on correct host plugin/component boundaries.
|
|
67
|
+
- This skill does not configure deployment adapters.
|
|
68
|
+
|
|
69
|
+
## Security & Safety Notes
|
|
70
|
+
|
|
71
|
+
Do not expose trusted HTML or loose Mermaid settings to untrusted model output. Review dependency and runtime-boundary changes.
|