@bgicli/bgicli 2.2.8 → 2.2.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.
Files changed (113) hide show
  1. package/data/skills/anthropic-algorithmic-art/SKILL.md +405 -0
  2. package/data/skills/anthropic-canvas-design/SKILL.md +130 -0
  3. package/data/skills/anthropic-claude-api/SKILL.md +243 -0
  4. package/data/skills/anthropic-doc-coauthoring/SKILL.md +375 -0
  5. package/data/skills/anthropic-docx/SKILL.md +590 -0
  6. package/data/skills/anthropic-frontend-design/SKILL.md +42 -0
  7. package/data/skills/anthropic-internal-comms/SKILL.md +32 -0
  8. package/data/skills/anthropic-mcp-builder/SKILL.md +236 -0
  9. package/data/skills/anthropic-pdf/SKILL.md +314 -0
  10. package/data/skills/anthropic-pptx/SKILL.md +232 -0
  11. package/data/skills/anthropic-skill-creator/SKILL.md +485 -0
  12. package/data/skills/anthropic-webapp-testing/SKILL.md +96 -0
  13. package/data/skills/anthropic-xlsx/SKILL.md +292 -0
  14. package/data/skills/arxiv-database/SKILL.md +362 -0
  15. package/data/skills/astropy/SKILL.md +329 -0
  16. package/data/skills/ctx-advanced-evaluation/SKILL.md +402 -0
  17. package/data/skills/ctx-bdi-mental-states/SKILL.md +311 -0
  18. package/data/skills/ctx-context-compression/SKILL.md +272 -0
  19. package/data/skills/ctx-context-degradation/SKILL.md +206 -0
  20. package/data/skills/ctx-context-fundamentals/SKILL.md +201 -0
  21. package/data/skills/ctx-context-optimization/SKILL.md +195 -0
  22. package/data/skills/ctx-evaluation/SKILL.md +251 -0
  23. package/data/skills/ctx-filesystem-context/SKILL.md +287 -0
  24. package/data/skills/ctx-hosted-agents/SKILL.md +260 -0
  25. package/data/skills/ctx-memory-systems/SKILL.md +225 -0
  26. package/data/skills/ctx-multi-agent-patterns/SKILL.md +257 -0
  27. package/data/skills/ctx-project-development/SKILL.md +291 -0
  28. package/data/skills/ctx-tool-design/SKILL.md +271 -0
  29. package/data/skills/dhdna-profiler/SKILL.md +162 -0
  30. package/data/skills/generate-image/SKILL.md +183 -0
  31. package/data/skills/geomaster/SKILL.md +365 -0
  32. package/data/skills/get-available-resources/SKILL.md +275 -0
  33. package/data/skills/hamelsmu-build-review-interface/SKILL.md +96 -0
  34. package/data/skills/hamelsmu-error-analysis/SKILL.md +164 -0
  35. package/data/skills/hamelsmu-eval-audit/SKILL.md +183 -0
  36. package/data/skills/hamelsmu-evaluate-rag/SKILL.md +177 -0
  37. package/data/skills/hamelsmu-generate-synthetic-data/SKILL.md +131 -0
  38. package/data/skills/hamelsmu-validate-evaluator/SKILL.md +212 -0
  39. package/data/skills/hamelsmu-write-judge-prompt/SKILL.md +144 -0
  40. package/data/skills/hf-cli/SKILL.md +174 -0
  41. package/data/skills/hf-mcp/SKILL.md +178 -0
  42. package/data/skills/hugging-face-dataset-viewer/SKILL.md +121 -0
  43. package/data/skills/hugging-face-datasets/SKILL.md +542 -0
  44. package/data/skills/hugging-face-evaluation/SKILL.md +651 -0
  45. package/data/skills/hugging-face-jobs/SKILL.md +1042 -0
  46. package/data/skills/hugging-face-model-trainer/SKILL.md +717 -0
  47. package/data/skills/hugging-face-paper-pages/SKILL.md +239 -0
  48. package/data/skills/hugging-face-paper-publisher/SKILL.md +624 -0
  49. package/data/skills/hugging-face-tool-builder/SKILL.md +110 -0
  50. package/data/skills/hugging-face-trackio/SKILL.md +115 -0
  51. package/data/skills/hugging-face-vision-trainer/SKILL.md +593 -0
  52. package/data/skills/huggingface-gradio/SKILL.md +245 -0
  53. package/data/skills/matlab/SKILL.md +376 -0
  54. package/data/skills/modal/SKILL.md +381 -0
  55. package/data/skills/openai-cloudflare-deploy/SKILL.md +224 -0
  56. package/data/skills/openai-develop-web-game/SKILL.md +149 -0
  57. package/data/skills/openai-doc/SKILL.md +80 -0
  58. package/data/skills/openai-figma/SKILL.md +42 -0
  59. package/data/skills/openai-figma-implement-design/SKILL.md +264 -0
  60. package/data/skills/openai-gh-address-comments/SKILL.md +25 -0
  61. package/data/skills/openai-gh-fix-ci/SKILL.md +69 -0
  62. package/data/skills/openai-imagegen/SKILL.md +174 -0
  63. package/data/skills/openai-jupyter-notebook/SKILL.md +107 -0
  64. package/data/skills/openai-linear/SKILL.md +87 -0
  65. package/data/skills/openai-netlify-deploy/SKILL.md +247 -0
  66. package/data/skills/openai-notion-knowledge-capture/SKILL.md +56 -0
  67. package/data/skills/openai-notion-meeting-intelligence/SKILL.md +60 -0
  68. package/data/skills/openai-notion-research-documentation/SKILL.md +59 -0
  69. package/data/skills/openai-notion-spec-to-implementation/SKILL.md +58 -0
  70. package/data/skills/openai-openai-docs/SKILL.md +69 -0
  71. package/data/skills/openai-pdf/SKILL.md +67 -0
  72. package/data/skills/openai-playwright/SKILL.md +147 -0
  73. package/data/skills/openai-render-deploy/SKILL.md +479 -0
  74. package/data/skills/openai-screenshot/SKILL.md +267 -0
  75. package/data/skills/openai-security-best-practices/SKILL.md +86 -0
  76. package/data/skills/openai-security-ownership-map/SKILL.md +206 -0
  77. package/data/skills/openai-security-threat-model/SKILL.md +81 -0
  78. package/data/skills/openai-sentry/SKILL.md +123 -0
  79. package/data/skills/openai-sora/SKILL.md +178 -0
  80. package/data/skills/openai-speech/SKILL.md +144 -0
  81. package/data/skills/openai-spreadsheet/SKILL.md +145 -0
  82. package/data/skills/openai-transcribe/SKILL.md +81 -0
  83. package/data/skills/openai-vercel-deploy/SKILL.md +77 -0
  84. package/data/skills/openai-yeet/SKILL.md +28 -0
  85. package/data/skills/pennylane/SKILL.md +224 -0
  86. package/data/skills/polars-bio/SKILL.md +374 -0
  87. package/data/skills/primekg/SKILL.md +97 -0
  88. package/data/skills/pymatgen/SKILL.md +689 -0
  89. package/data/skills/qiskit/SKILL.md +273 -0
  90. package/data/skills/qutip/SKILL.md +316 -0
  91. package/data/skills/recursive-decomposition/SKILL.md +185 -0
  92. package/data/skills/rowan/SKILL.md +427 -0
  93. package/data/skills/scholar-evaluation/SKILL.md +298 -0
  94. package/data/skills/sentry-create-alert/SKILL.md +210 -0
  95. package/data/skills/sentry-fix-issues/SKILL.md +126 -0
  96. package/data/skills/sentry-pr-code-review/SKILL.md +105 -0
  97. package/data/skills/sentry-python-sdk/SKILL.md +317 -0
  98. package/data/skills/sentry-setup-ai-monitoring/SKILL.md +217 -0
  99. package/data/skills/stable-baselines3/SKILL.md +297 -0
  100. package/data/skills/sympy/SKILL.md +498 -0
  101. package/data/skills/trailofbits-ask-questions-if-underspecified/SKILL.md +85 -0
  102. package/data/skills/trailofbits-audit-context-building/SKILL.md +302 -0
  103. package/data/skills/trailofbits-differential-review/SKILL.md +220 -0
  104. package/data/skills/trailofbits-insecure-defaults/SKILL.md +117 -0
  105. package/data/skills/trailofbits-modern-python/SKILL.md +333 -0
  106. package/data/skills/trailofbits-property-based-testing/SKILL.md +123 -0
  107. package/data/skills/trailofbits-semgrep-rule-creator/SKILL.md +172 -0
  108. package/data/skills/trailofbits-sharp-edges/SKILL.md +292 -0
  109. package/data/skills/trailofbits-variant-analysis/SKILL.md +142 -0
  110. package/data/skills/transformers.js/SKILL.md +637 -0
  111. package/data/skills/writing/SKILL.md +419 -0
  112. package/dist/bgi.js +2 -2
  113. package/package.json +1 -1
@@ -0,0 +1,174 @@
1
+ ---
2
+ name: "imagegen"
3
+ description: "Use when the user asks to generate or edit images via the OpenAI Image API (for example: generate image, edit/inpaint/mask, background removal or replacement, transparent background, product shots, concept art, covers, or batch variants); run the bundled CLI (`scripts/image_gen.py`) and require `OPENAI_API_KEY` for live calls."
4
+ ---
5
+
6
+
7
+ # Image Generation Skill
8
+
9
+ Generates or edits images for the current project (e.g., website assets, game assets, UI mockups, product mockups, wireframes, logo design, photorealistic images, infographics). Defaults to `gpt-image-1.5` and the OpenAI Image API, and prefers the bundled CLI for deterministic, reproducible runs.
10
+
11
+ ## When to use
12
+ - Generate a new image (concept art, product shot, cover, website hero)
13
+ - Edit an existing image (inpainting, masked edits, lighting or weather transformations, background replacement, object removal, compositing, transparent background)
14
+ - Batch runs (many prompts, or many variants across prompts)
15
+
16
+ ## Decision tree (generate vs edit vs batch)
17
+ - If the user provides an input image (or says “edit/retouch/inpaint/mask/translate/localize/change only X”) → **edit**
18
+ - Else if the user needs many different prompts/assets → **generate-batch**
19
+ - Else → **generate**
20
+
21
+ ## Workflow
22
+ 1. Decide intent: generate vs edit vs batch (see decision tree above).
23
+ 2. Collect inputs up front: prompt(s), exact text (verbatim), constraints/avoid list, and any input image(s)/mask(s). For multi-image edits, label each input by index and role; for edits, list invariants explicitly.
24
+ 3. If batch: write a temporary JSONL under tmp/ (one job per line), run once, then delete the JSONL.
25
+ 4. Augment prompt into a short labeled spec (structure + constraints) without inventing new creative requirements.
26
+ 5. Run the bundled CLI (`scripts/image_gen.py`) with sensible defaults (see references/cli.md).
27
+ 6. For complex edits/generations, inspect outputs (open/view images) and validate: subject, style, composition, text accuracy, and invariants/avoid items.
28
+ 7. Iterate: make a single targeted change (prompt or mask), re-run, re-check.
29
+ 8. Save/return final outputs and note the final prompt + flags used.
30
+
31
+ ## Temp and output conventions
32
+ - Use `tmp/imagegen/` for intermediate files (for example JSONL batches); delete when done.
33
+ - Write final artifacts under `output/imagegen/` when working in this repo.
34
+ - Use `--out` or `--out-dir` to control output paths; keep filenames stable and descriptive.
35
+
36
+ ## Dependencies (install if missing)
37
+ Prefer `uv` for dependency management.
38
+
39
+ Python packages:
40
+ ```
41
+ uv pip install openai pillow
42
+ ```
43
+ If `uv` is unavailable:
44
+ ```
45
+ python3 -m pip install openai pillow
46
+ ```
47
+
48
+ ## Environment
49
+ - `OPENAI_API_KEY` must be set for live API calls.
50
+
51
+ If the key is missing, give the user these steps:
52
+ 1. Create an API key in the OpenAI platform UI: https://platform.openai.com/api-keys
53
+ 2. Set `OPENAI_API_KEY` as an environment variable in their system.
54
+ 3. Offer to guide them through setting the environment variable for their OS/shell if needed.
55
+ - Never ask the user to paste the full key in chat. Ask them to set it locally and confirm when ready.
56
+
57
+ If installation isn't possible in this environment, tell the user which dependency is missing and how to install it locally.
58
+
59
+ ## Defaults & rules
60
+ - Use `gpt-image-1.5` unless the user explicitly asks for `gpt-image-1-mini` or explicitly prefers a cheaper/faster model.
61
+ - Assume the user wants a new image unless they explicitly ask for an edit.
62
+ - Require `OPENAI_API_KEY` before any live API call.
63
+ - Use the OpenAI Python SDK (`openai` package) for all API calls; do not use raw HTTP.
64
+ - If the user requests edits, use `client.images.edit(...)` and include input images (and mask if provided).
65
+ - Prefer the bundled CLI (`scripts/image_gen.py`) over writing new one-off scripts.
66
+ - Never modify `scripts/image_gen.py`. If something is missing, ask the user before doing anything else.
67
+ - If the result isn’t clearly relevant or doesn’t satisfy constraints, iterate with small targeted prompt changes; only ask a question if a missing detail blocks success.
68
+
69
+ ## Prompt augmentation
70
+ Reformat user prompts into a structured, production-oriented spec. Only make implicit details explicit; do not invent new requirements.
71
+
72
+ ## Use-case taxonomy (exact slugs)
73
+ Classify each request into one of these buckets and keep the slug consistent across prompts and references.
74
+
75
+ Generate:
76
+ - photorealistic-natural — candid/editorial lifestyle scenes with real texture and natural lighting.
77
+ - product-mockup — product/packaging shots, catalog imagery, merch concepts.
78
+ - ui-mockup — app/web interface mockups that look shippable.
79
+ - infographic-diagram — diagrams/infographics with structured layout and text.
80
+ - logo-brand — logo/mark exploration, vector-friendly.
81
+ - illustration-story — comics, children’s book art, narrative scenes.
82
+ - stylized-concept — style-driven concept art, 3D/stylized renders.
83
+ - historical-scene — period-accurate/world-knowledge scenes.
84
+
85
+ Edit:
86
+ - text-localization — translate/replace in-image text, preserve layout.
87
+ - identity-preserve — try-on, person-in-scene; lock face/body/pose.
88
+ - precise-object-edit — remove/replace a specific element (incl. interior swaps).
89
+ - lighting-weather — time-of-day/season/atmosphere changes only.
90
+ - background-extraction — transparent background / clean cutout.
91
+ - style-transfer — apply reference style while changing subject/scene.
92
+ - compositing — multi-image insert/merge with matched lighting/perspective.
93
+ - sketch-to-render — drawing/line art to photoreal render.
94
+
95
+ Quick clarification (augmentation vs invention):
96
+ - If the user says “a hero image for a landing page”, you may add *layout/composition constraints* that are implied by that use (e.g., “generous negative space on the right for headline text”).
97
+ - Do not introduce new creative elements the user didn’t ask for (e.g., adding a mascot, changing the subject, inventing brand names/logos).
98
+
99
+ Template (include only relevant lines):
100
+ ```
101
+ Use case: <taxonomy slug>
102
+ Asset type: <where the asset will be used>
103
+ Primary request: <user's main prompt>
104
+ Scene/background: <environment>
105
+ Subject: <main subject>
106
+ Style/medium: <photo/illustration/3D/etc>
107
+ Composition/framing: <wide/close/top-down; placement>
108
+ Lighting/mood: <lighting + mood>
109
+ Color palette: <palette notes>
110
+ Materials/textures: <surface details>
111
+ Quality: <low/medium/high/auto>
112
+ Input fidelity (edits): <low/high>
113
+ Text (verbatim): "<exact text>"
114
+ Constraints: <must keep/must avoid>
115
+ Avoid: <negative constraints>
116
+ ```
117
+
118
+ Augmentation rules:
119
+ - Keep it short; add only details the user already implied or provided elsewhere.
120
+ - Always classify the request into a taxonomy slug above and tailor constraints/composition/quality to that bucket. Use the slug to find the matching example in `references/sample-prompts.md`.
121
+ - If the user gives a broad request (e.g., "Generate images for this website"), use judgment to propose tasteful, context-appropriate assets and map each to a taxonomy slug.
122
+ - For edits, explicitly list invariants ("change only X; keep Y unchanged").
123
+ - If any critical detail is missing and blocks success, ask a question; otherwise proceed.
124
+
125
+ ## Examples
126
+
127
+ ### Generation example (hero image)
128
+ ```
129
+ Use case: stylized-concept
130
+ Asset type: landing page hero
131
+ Primary request: a minimal hero image of a ceramic coffee mug
132
+ Style/medium: clean product photography
133
+ Composition/framing: centered product, generous negative space on the right
134
+ Lighting/mood: soft studio lighting
135
+ Constraints: no logos, no text, no watermark
136
+ ```
137
+
138
+ ### Edit example (invariants)
139
+ ```
140
+ Use case: precise-object-edit
141
+ Asset type: product photo background replacement
142
+ Primary request: replace the background with a warm sunset gradient
143
+ Constraints: change only the background; keep the product and its edges unchanged; no text; no watermark
144
+ ```
145
+
146
+ ## Prompting best practices (short list)
147
+ - Structure prompt as scene -> subject -> details -> constraints.
148
+ - Include intended use (ad, UI mock, infographic) to set the mode and polish level.
149
+ - Use camera/composition language for photorealism.
150
+ - Quote exact text and specify typography + placement.
151
+ - For tricky words, spell them letter-by-letter and require verbatim rendering.
152
+ - For multi-image inputs, reference images by index and describe how to combine them.
153
+ - For edits, repeat invariants every iteration to reduce drift.
154
+ - Iterate with single-change follow-ups.
155
+ - For latency-sensitive runs, start with quality=low; use quality=high for text-heavy or detail-critical outputs.
156
+ - For strict edits (identity/layout lock), consider input_fidelity=high.
157
+ - If results feel “tacky”, add a brief “Avoid:” line (stock-photo vibe; cheesy lens flare; oversaturated neon; harsh bloom; oversharpening; clutter) and specify restraint (“editorial”, “premium”, “subtle”).
158
+
159
+ More principles: `references/prompting.md`. Copy/paste specs: `references/sample-prompts.md`.
160
+
161
+ ## Guidance by asset type
162
+ Asset-type templates (website assets, game assets, wireframes, logo) are consolidated in `references/sample-prompts.md`.
163
+
164
+ ## CLI + environment notes
165
+ - CLI commands + examples: `references/cli.md`
166
+ - API parameter quick reference: `references/image-api.md`
167
+ - If network approvals / sandbox settings are getting in the way: `references/codex-network.md`
168
+
169
+ ## Reference map
170
+ - **`references/cli.md`**: how to *run* image generation/edits/batches via `scripts/image_gen.py` (commands, flags, recipes).
171
+ - **`references/image-api.md`**: what knobs exist at the API level (parameters, sizes, quality, background, edit-only fields).
172
+ - **`references/prompting.md`**: prompting principles (structure, constraints/invariants, iteration patterns).
173
+ - **`references/sample-prompts.md`**: copy/paste prompt recipes (generate + edit workflows; examples only).
174
+ - **`references/codex-network.md`**: environment/sandbox/network-approval troubleshooting.
@@ -0,0 +1,107 @@
1
+ ---
2
+ name: "jupyter-notebook"
3
+ description: "Use when the user asks to create, scaffold, or edit Jupyter notebooks (`.ipynb`) for experiments, explorations, or tutorials; prefer the bundled templates and run the helper script `new_notebook.py` to generate a clean starting notebook."
4
+ ---
5
+
6
+
7
+ # Jupyter Notebook Skill
8
+
9
+ Create clean, reproducible Jupyter notebooks for two primary modes:
10
+
11
+ - Experiments and exploratory analysis
12
+ - Tutorials and teaching-oriented walkthroughs
13
+
14
+ Prefer the bundled templates and the helper script for consistent structure and fewer JSON mistakes.
15
+
16
+ ## When to use
17
+ - Create a new `.ipynb` notebook from scratch.
18
+ - Convert rough notes or scripts into a structured notebook.
19
+ - Refactor an existing notebook to be more reproducible and skimmable.
20
+ - Build experiments or tutorials that will be read or re-run by other people.
21
+
22
+ ## Decision tree
23
+ - If the request is exploratory, analytical, or hypothesis-driven, choose `experiment`.
24
+ - If the request is instructional, step-by-step, or audience-specific, choose `tutorial`.
25
+ - If editing an existing notebook, treat it as a refactor: preserve intent and improve structure.
26
+
27
+ ## Skill path (set once)
28
+
29
+ ```bash
30
+ export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
31
+ export JUPYTER_NOTEBOOK_CLI="$CODEX_HOME/skills/jupyter-notebook/scripts/new_notebook.py"
32
+ ```
33
+
34
+ User-scoped skills install under `$CODEX_HOME/skills` (default: `~/.codex/skills`).
35
+
36
+ ## Workflow
37
+ 1. Lock the intent.
38
+ Identify the notebook kind: `experiment` or `tutorial`.
39
+ Capture the objective, audience, and what "done" looks like.
40
+
41
+ 2. Scaffold from the template.
42
+ Use the helper script to avoid hand-authoring raw notebook JSON.
43
+
44
+ ```bash
45
+ uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \
46
+ --kind experiment \
47
+ --title "Compare prompt variants" \
48
+ --out output/jupyter-notebook/compare-prompt-variants.ipynb
49
+ ```
50
+
51
+ ```bash
52
+ uv run --python 3.12 python "$JUPYTER_NOTEBOOK_CLI" \
53
+ --kind tutorial \
54
+ --title "Intro to embeddings" \
55
+ --out output/jupyter-notebook/intro-to-embeddings.ipynb
56
+ ```
57
+
58
+ 3. Fill the notebook with small, runnable steps.
59
+ Keep each code cell focused on one step.
60
+ Add short markdown cells that explain the purpose and expected result.
61
+ Avoid large, noisy outputs when a short summary works.
62
+
63
+ 4. Apply the right pattern.
64
+ For experiments, follow `references/experiment-patterns.md`.
65
+ For tutorials, follow `references/tutorial-patterns.md`.
66
+
67
+ 5. Edit safely when working with existing notebooks.
68
+ Preserve the notebook structure; avoid reordering cells unless it improves the top-to-bottom story.
69
+ Prefer targeted edits over full rewrites.
70
+ If you must edit raw JSON, review `references/notebook-structure.md` first.
71
+
72
+ 6. Validate the result.
73
+ Run the notebook top-to-bottom when the environment allows.
74
+ If execution is not possible, say so explicitly and call out how to validate locally.
75
+ Use the final pass checklist in `references/quality-checklist.md`.
76
+
77
+ ## Templates and helper script
78
+ - Templates live in `assets/experiment-template.ipynb` and `assets/tutorial-template.ipynb`.
79
+ - The helper script loads a template, updates the title cell, and writes a notebook.
80
+
81
+ Script path:
82
+ - `$JUPYTER_NOTEBOOK_CLI` (installed default: `$CODEX_HOME/skills/jupyter-notebook/scripts/new_notebook.py`)
83
+
84
+ ## Temp and output conventions
85
+ - Use `tmp/jupyter-notebook/` for intermediate files; delete when done.
86
+ - Write final artifacts under `output/jupyter-notebook/` when working in this repo.
87
+ - Use stable, descriptive filenames (for example, `ablation-temperature.ipynb`).
88
+
89
+ ## Dependencies (install only when needed)
90
+ Prefer `uv` for dependency management.
91
+
92
+ Optional Python packages for local notebook execution:
93
+
94
+ ```bash
95
+ uv pip install jupyterlab ipykernel
96
+ ```
97
+
98
+ The bundled scaffold script uses only the Python standard library and does not require extra dependencies.
99
+
100
+ ## Environment
101
+ No required environment variables.
102
+
103
+ ## Reference map
104
+ - `references/experiment-patterns.md`: experiment structure and heuristics.
105
+ - `references/tutorial-patterns.md`: tutorial structure and teaching flow.
106
+ - `references/notebook-structure.md`: notebook JSON shape and safe editing rules.
107
+ - `references/quality-checklist.md`: final validation checklist.
@@ -0,0 +1,87 @@
1
+ ---
2
+ name: linear
3
+ description: Manage issues, projects & team workflows in Linear. Use when the user wants to read, create or updates tickets in Linear.
4
+ metadata:
5
+ short-description: Manage Linear issues in Codex
6
+ ---
7
+
8
+ # Linear
9
+
10
+ ## Overview
11
+
12
+ This skill provides a structured workflow for managing issues, projects & team workflows in Linear. It ensures consistent integration with the Linear MCP server, which offers natural-language project management for issues, projects, documentation, and team collaboration.
13
+
14
+ ## Prerequisites
15
+ - Linear MCP server must be connected and accessible via OAuth
16
+ - Confirm access to the relevant Linear workspace, teams, and projects
17
+
18
+ ## Required Workflow
19
+
20
+ **Follow these steps in order. Do not skip steps.**
21
+
22
+ ### Step 0: Set up Linear MCP (if not already configured)
23
+
24
+ If any MCP call fails because Linear MCP is not connected, pause and set it up:
25
+
26
+ 1. Add the Linear MCP:
27
+ - `codex mcp add linear --url https://mcp.linear.app/mcp`
28
+ 2. Enable remote MCP client:
29
+ - Set `[features] rmcp_client = true` in `config.toml` **or** run `codex --enable rmcp_client`
30
+ 3. Log in with OAuth:
31
+ - `codex mcp login linear`
32
+
33
+ After successful login, the user will have to restart codex. You should finish your answer and tell them so when they try again they can continue with Step 1.
34
+
35
+ **Windows/WSL note:** If you see connection errors on Windows, try configuring the Linear MCP to run via WSL:
36
+ ```json
37
+ {"mcpServers": {"linear": {"command": "wsl", "args": ["npx", "-y", "mcp-remote", "https://mcp.linear.app/sse", "--transport", "sse-only"]}}}
38
+ ```
39
+
40
+ ### Step 1
41
+ Clarify the user's goal and scope (e.g., issue triage, sprint planning, documentation audit, workload balance). Confirm team/project, priority, labels, cycle, and due dates as needed.
42
+
43
+ ### Step 2
44
+ Select the appropriate workflow (see Practical Workflows below) and identify the Linear MCP tools you will need. Confirm required identifiers (issue ID, project ID, team key) before calling tools.
45
+
46
+ ### Step 3
47
+ Execute Linear MCP tool calls in logical batches:
48
+ - Read first (list/get/search) to build context.
49
+ - Create or update next (issues, projects, labels, comments) with all required fields.
50
+ - For bulk operations, explain the grouping logic before applying changes.
51
+
52
+ ### Step 4
53
+ Summarize results, call out remaining gaps or blockers, and propose next actions (additional issues, label changes, assignments, or follow-up comments).
54
+
55
+ ## Available Tools
56
+
57
+ Issue Management: `list_issues`, `get_issue`, `create_issue`, `update_issue`, `list_my_issues`, `list_issue_statuses`, `list_issue_labels`, `create_issue_label`
58
+
59
+ Project & Team: `list_projects`, `get_project`, `create_project`, `update_project`, `list_teams`, `get_team`, `list_users`
60
+
61
+ Documentation & Collaboration: `list_documents`, `get_document`, `search_documentation`, `list_comments`, `create_comment`, `list_cycles`
62
+
63
+ ## Practical Workflows
64
+
65
+ - Sprint Planning: Review open issues for a target team, pick top items by priority, and create a new cycle (e.g., "Q1 Performance Sprint") with assignments.
66
+ - Bug Triage: List critical/high-priority bugs, rank by user impact, and move the top items to "In Progress."
67
+ - Documentation Audit: Search documentation (e.g., API auth), then open labeled "documentation" issues for gaps or outdated sections with detailed fixes.
68
+ - Team Workload Balance: Group active issues by assignee, flag anyone with high load, and suggest or apply redistributions.
69
+ - Release Planning: Create a project (e.g., "v2.0 Release") with milestones (feature freeze, beta, docs, launch) and generate issues with estimates.
70
+ - Cross-Project Dependencies: Find all "blocked" issues, identify blockers, and create linked issues if missing.
71
+ - Automated Status Updates: Find your issues with stale updates and add status comments based on current state/blockers.
72
+ - Smart Labeling: Analyze unlabeled issues, suggest/apply labels, and create missing label categories.
73
+ - Sprint Retrospectives: Generate a report for the last completed cycle, note completed vs. pushed work, and open discussion issues for patterns.
74
+
75
+ ## Tips for Maximum Productivity
76
+
77
+ - Batch operations for related changes; consider smart templates for recurring issue structures.
78
+ - Use natural queries when possible ("Show me what John is working on this week").
79
+ - Leverage context: reference prior issues in new requests.
80
+ - Break large updates into smaller batches to avoid rate limits; cache or reuse filters when listing frequently.
81
+
82
+ ## Troubleshooting
83
+
84
+ - Authentication: Clear browser cookies, re-run OAuth, verify workspace permissions, ensure API access is enabled.
85
+ - Tool Calling Errors: Confirm the model supports multiple tool calls, provide all required fields, and split complex requests.
86
+ - Missing Data: Refresh token, verify workspace access, check for archived projects, and confirm correct team selection.
87
+ - Performance: Remember Linear API rate limits; batch bulk operations, use specific filters, or cache frequent queries.
@@ -0,0 +1,247 @@
1
+ ---
2
+ name: netlify-deploy
3
+ description: Deploy web projects to Netlify using the Netlify CLI (`npx netlify`). Use when the user asks to deploy, host, publish, or link a site/repo on Netlify, including preview and production deploys.
4
+ ---
5
+
6
+ # Netlify Deployment Skill
7
+
8
+ Deploy web projects to Netlify using the Netlify CLI with intelligent detection of project configuration and deployment context.
9
+
10
+ ## Overview
11
+
12
+ This skill automates Netlify deployments by:
13
+ - Verifying Netlify CLI authentication
14
+ - Detecting project configuration and framework
15
+ - Linking to existing sites or creating new ones
16
+ - Deploying to production or preview environments
17
+
18
+ ## Prerequisites
19
+
20
+ - **Netlify CLI**: Installed via npx (no global install required)
21
+ - **Authentication**: Netlify account with active login session
22
+ - **Project**: Valid web project in current directory
23
+ - When sandboxing blocks the deployment network calls, rerun with `sandbox_permissions=require_escalated`.
24
+ - The deployment might take a few minutes. Use appropriate timeout values.
25
+
26
+ ## Authentication Pattern
27
+
28
+ The skill uses the **pre-authenticated Netlify CLI** approach:
29
+
30
+ 1. Check authentication status with `npx netlify status`
31
+ 2. If not authenticated, guide user through `npx netlify login`
32
+ 3. Fail gracefully if authentication cannot be established
33
+
34
+ Authentication uses either:
35
+ - **Browser-based OAuth** (primary): `netlify login` opens browser for authentication
36
+ - **API Key** (alternative): Set `NETLIFY_AUTH_TOKEN` environment variable
37
+
38
+ ## Workflow
39
+
40
+ ### 1. Verify Netlify CLI Authentication
41
+
42
+ Check if the user is logged into Netlify:
43
+
44
+ ```bash
45
+ npx netlify status
46
+ ```
47
+
48
+ **Expected output patterns**:
49
+ - ✅ Authenticated: Shows logged-in user email and site link status
50
+ - ❌ Not authenticated: "Not logged into any site" or authentication error
51
+
52
+ **If not authenticated**, guide the user:
53
+
54
+ ```bash
55
+ npx netlify login
56
+ ```
57
+
58
+ This opens a browser window for OAuth authentication. Wait for user to complete login, then verify with `netlify status` again.
59
+
60
+ **Alternative: API Key authentication**
61
+
62
+ If browser authentication isn't available, users can set:
63
+
64
+ ```bash
65
+ export NETLIFY_AUTH_TOKEN=your_token_here
66
+ ```
67
+
68
+ Tokens can be generated at: https://app.netlify.com/user/applications#personal-access-tokens
69
+
70
+ ### 2. Detect Site Link Status
71
+
72
+ From `netlify status` output, determine:
73
+ - **Linked**: Site already connected to Netlify (shows site name/URL)
74
+ - **Not linked**: Need to link or create site
75
+
76
+ ### 3. Link to Existing Site or Create New
77
+
78
+ **If already linked** → Skip to step 4
79
+
80
+ **If not linked**, attempt to link by Git remote:
81
+
82
+ ```bash
83
+ # Check if project is Git-based
84
+ git remote show origin
85
+
86
+ # If Git-based, extract remote URL
87
+ # Format: https://github.com/username/repo or git@github.com:username/repo.git
88
+
89
+ # Try to link by Git remote
90
+ npx netlify link --git-remote-url <REMOTE_URL>
91
+ ```
92
+
93
+ **If link fails** (site doesn't exist on Netlify):
94
+
95
+ ```bash
96
+ # Create new site interactively
97
+ npx netlify init
98
+ ```
99
+
100
+ This guides user through:
101
+ 1. Choosing team/account
102
+ 2. Setting site name
103
+ 3. Configuring build settings
104
+ 4. Creating netlify.toml if needed
105
+
106
+ ### 4. Verify Dependencies
107
+
108
+ Before deploying, ensure project dependencies are installed:
109
+
110
+ ```bash
111
+ # For npm projects
112
+ npm install
113
+
114
+ # For other package managers, detect and use appropriate command
115
+ # yarn install, pnpm install, etc.
116
+ ```
117
+
118
+ ### 5. Deploy to Netlify
119
+
120
+ Choose deployment type based on context:
121
+
122
+ **Preview/Draft Deploy** (default for existing sites):
123
+
124
+ ```bash
125
+ npx netlify deploy
126
+ ```
127
+
128
+ This creates a deploy preview with a unique URL for testing.
129
+
130
+ **Production Deploy** (for new sites or explicit production deployments):
131
+
132
+ ```bash
133
+ npx netlify deploy --prod
134
+ ```
135
+
136
+ This deploys to the live production URL.
137
+
138
+ **Deployment process**:
139
+ 1. CLI detects build settings (from netlify.toml or prompts user)
140
+ 2. Builds the project locally
141
+ 3. Uploads built assets to Netlify
142
+ 4. Returns deployment URL
143
+
144
+ ### 6. Report Results
145
+
146
+ After deployment, report to user:
147
+ - **Deploy URL**: Unique URL for this deployment
148
+ - **Site URL**: Production URL (if production deploy)
149
+ - **Deploy logs**: Link to Netlify dashboard for logs
150
+ - **Next steps**: Suggest `netlify open` to view site or dashboard
151
+
152
+ ## Handling netlify.toml
153
+
154
+ If a `netlify.toml` file exists, the CLI uses it automatically. If not, the CLI will prompt for:
155
+ - **Build command**: e.g., `npm run build`, `next build`
156
+ - **Publish directory**: e.g., `dist`, `build`, `.next`
157
+
158
+ Common framework defaults:
159
+ - **Next.js**: build command `npm run build`, publish `.next`
160
+ - **React (Vite)**: build command `npm run build`, publish `dist`
161
+ - **Static HTML**: no build command, publish current directory
162
+
163
+ The skill should detect framework from `package.json` if possible and suggest appropriate settings.
164
+
165
+ ## Example Full Workflow
166
+
167
+ ```bash
168
+ # 1. Check authentication
169
+ npx netlify status
170
+
171
+ # If not authenticated:
172
+ npx netlify login
173
+
174
+ # 2. Link site (if needed)
175
+ # Try Git-based linking first
176
+ git remote show origin
177
+ npx netlify link --git-remote-url https://github.com/user/repo
178
+
179
+ # If no site exists, create new one:
180
+ npx netlify init
181
+
182
+ # 3. Install dependencies
183
+ npm install
184
+
185
+ # 4. Deploy (preview for testing)
186
+ npx netlify deploy
187
+
188
+ # 5. Deploy to production (when ready)
189
+ npx netlify deploy --prod
190
+ ```
191
+
192
+ ## Error Handling
193
+
194
+ Common issues and solutions:
195
+
196
+ **"Not logged in"**
197
+ → Run `npx netlify login`
198
+
199
+ **"No site linked"**
200
+ → Run `npx netlify link` or `npx netlify init`
201
+
202
+ **"Build failed"**
203
+ → Check build command and publish directory in netlify.toml or CLI prompts
204
+ → Verify dependencies are installed
205
+ → Review build logs for specific errors
206
+
207
+ **"Publish directory not found"**
208
+ → Verify build command ran successfully
209
+ → Check publish directory path is correct
210
+
211
+ ## Troubleshooting
212
+
213
+ ### Escalated Network Access
214
+
215
+ If deployment fails due to network issues (timeouts, DNS errors, connection resets), rerun the deploy with escalated permissions (use `sandbox_permissions=require_escalated`). The deploy requires escalated network access when sandbox networking blocks outbound requests.
216
+
217
+ Example guidance to the user:
218
+
219
+ ```
220
+ The deploy needs escalated network access to deploy to Netlify. I can rerun the command with escalated permissions—want me to proceed?
221
+ ```
222
+
223
+ ## Environment Variables
224
+
225
+ For secrets and configuration:
226
+
227
+ 1. Never commit secrets to Git
228
+ 2. Set in Netlify dashboard: Site Settings → Environment Variables
229
+ 3. Access in builds via `process.env.VARIABLE_NAME`
230
+
231
+ ## Tips
232
+
233
+ - Use `netlify deploy` (no `--prod`) first to test before production
234
+ - Run `netlify open` to view site in Netlify dashboard
235
+ - Run `netlify logs` to view function logs (if using Netlify Functions)
236
+ - Use `netlify dev` for local development with Netlify Functions
237
+
238
+ ## Reference
239
+
240
+ - Netlify CLI Docs: https://docs.netlify.com/cli/get-started/
241
+ - netlify.toml Reference: https://docs.netlify.com/configure-builds/file-based-configuration/
242
+
243
+ ## Bundled References (Load As Needed)
244
+
245
+ - [CLI commands](references/cli-commands.md)
246
+ - [Deployment patterns](references/deployment-patterns.md)
247
+ - [netlify.toml guide](references/netlify-toml.md)
@@ -0,0 +1,56 @@
1
+ ---
2
+ name: notion-knowledge-capture
3
+ description: Capture conversations and decisions into structured Notion pages; use when turning chats/notes into wiki entries, how-tos, decisions, or FAQs with proper linking.
4
+ metadata:
5
+ short-description: Capture conversations into structured Notion pages
6
+ ---
7
+
8
+ # Knowledge Capture
9
+
10
+ Convert conversations and notes into structured, linkable Notion pages for easy reuse.
11
+
12
+ ## Quick start
13
+ 1) Clarify what to capture (decision, how-to, FAQ, learning, documentation) and target audience.
14
+ 2) Identify the right database/template in `reference/` (team wiki, how-to, FAQ, decision log, learning, documentation).
15
+ 3) Pull any prior context from Notion with `Notion:notion-search` → `Notion:notion-fetch` (existing pages to update/link).
16
+ 4) Draft the page with `Notion:notion-create-pages` using the database’s schema; include summary, context, source links, and tags/owners.
17
+ 5) Link from hub pages and related records; update status/owners with `Notion:notion-update-page` as the source evolves.
18
+
19
+ ## Workflow
20
+ ### 0) If any MCP call fails because Notion MCP is not connected, pause and set it up:
21
+ 1. Add the Notion MCP:
22
+ - `codex mcp add notion --url https://mcp.notion.com/mcp`
23
+ 2. Enable remote MCP client:
24
+ - Set `[features].rmcp_client = true` in `config.toml` **or** run `codex --enable rmcp_client`
25
+ 3. Log in with OAuth:
26
+ - `codex mcp login notion`
27
+
28
+ After successful login, the user will have to restart codex. You should finish your answer and tell them so when they try again they can continue with Step 1.
29
+
30
+ ### 1) Define the capture
31
+ - Ask purpose, audience, freshness, and whether this is new or an update.
32
+ - Determine content type: decision, how-to, FAQ, concept/wiki entry, learning/note, documentation page.
33
+
34
+ ### 2) Locate destination
35
+ - Pick the correct database using `reference/*-database.md` guides; confirm required properties (title, tags, owner, status, date, relations).
36
+ - If multiple candidate databases, ask the user which to use; otherwise, create in the primary wiki/documentation DB.
37
+
38
+ ### 3) Extract and structure
39
+ - Extract facts, decisions, actions, and rationale from the conversation.
40
+ - For decisions, record alternatives, rationale, and outcomes.
41
+ - For how-tos/docs, capture steps, pre-reqs, links to assets/code, and edge cases.
42
+ - For FAQs, phrase as Q&A with concise answers and links to deeper docs.
43
+
44
+ ### 4) Create/update in Notion
45
+ - Use `Notion:notion-create-pages` with the correct `data_source_id`; set properties (title, tags, owner, status, dates, relations).
46
+ - Use templates in `reference/` to structure content (section headers, checklists).
47
+ - If updating an existing page, fetch then edit via `Notion:notion-update-page`.
48
+
49
+ ### 5) Link and surface
50
+ - Add relations/backlinks to hub pages, related specs/docs, and teams.
51
+ - Add a short summary/changelog for future readers.
52
+ - If follow-up tasks exist, create tasks in the relevant database and link them.
53
+
54
+ ## References and examples
55
+ - `reference/` — database schemas and templates (e.g., `team-wiki-database.md`, `how-to-guide-database.md`, `faq-database.md`, `decision-log-database.md`, `documentation-database.md`, `learning-database.md`, `database-best-practices.md`).
56
+ - `examples/` — capture patterns in practice (e.g., `decision-capture.md`, `how-to-guide.md`, `conversation-to-faq.md`).