cli-jaw 0.1.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.
- package/LICENSE +21 -0
- package/README.ko.md +411 -0
- package/README.md +416 -0
- package/README.zh-CN.md +411 -0
- package/dist/bin/cli-jaw.js +108 -0
- package/dist/bin/cli-jaw.js.map +1 -0
- package/dist/bin/commands/browser.js +241 -0
- package/dist/bin/commands/browser.js.map +1 -0
- package/dist/bin/commands/chat.js +878 -0
- package/dist/bin/commands/chat.js.map +1 -0
- package/dist/bin/commands/doctor.js +152 -0
- package/dist/bin/commands/doctor.js.map +1 -0
- package/dist/bin/commands/employee.js +70 -0
- package/dist/bin/commands/employee.js.map +1 -0
- package/dist/bin/commands/init.js +110 -0
- package/dist/bin/commands/init.js.map +1 -0
- package/dist/bin/commands/mcp.js +219 -0
- package/dist/bin/commands/mcp.js.map +1 -0
- package/dist/bin/commands/memory.js +105 -0
- package/dist/bin/commands/memory.js.map +1 -0
- package/dist/bin/commands/reset.js +109 -0
- package/dist/bin/commands/reset.js.map +1 -0
- package/dist/bin/commands/serve.js +75 -0
- package/dist/bin/commands/serve.js.map +1 -0
- package/dist/bin/commands/skill.js +232 -0
- package/dist/bin/commands/skill.js.map +1 -0
- package/dist/bin/commands/status.js +51 -0
- package/dist/bin/commands/status.js.map +1 -0
- package/dist/bin/postinstall.js +218 -0
- package/dist/bin/postinstall.js.map +1 -0
- package/dist/lib/mcp-sync.js +639 -0
- package/dist/lib/mcp-sync.js.map +1 -0
- package/dist/lib/quota-copilot.js +62 -0
- package/dist/lib/quota-copilot.js.map +1 -0
- package/dist/lib/upload.js +72 -0
- package/dist/lib/upload.js.map +1 -0
- package/dist/server.js +832 -0
- package/dist/server.js.map +1 -0
- package/dist/src/agent/args.js +66 -0
- package/dist/src/agent/args.js.map +1 -0
- package/dist/src/agent/events.js +328 -0
- package/dist/src/agent/events.js.map +1 -0
- package/dist/src/agent/spawn.js +646 -0
- package/dist/src/agent/spawn.js.map +1 -0
- package/dist/src/browser/actions.js +168 -0
- package/dist/src/browser/actions.js.map +1 -0
- package/dist/src/browser/connection.js +79 -0
- package/dist/src/browser/connection.js.map +1 -0
- package/dist/src/browser/index.js +4 -0
- package/dist/src/browser/index.js.map +1 -0
- package/dist/src/browser/vision.js +128 -0
- package/dist/src/browser/vision.js.map +1 -0
- package/dist/src/cli/acp-client.js +298 -0
- package/dist/src/cli/acp-client.js.map +1 -0
- package/dist/src/cli/commands.js +267 -0
- package/dist/src/cli/commands.js.map +1 -0
- package/dist/src/cli/handlers.js +405 -0
- package/dist/src/cli/handlers.js.map +1 -0
- package/dist/src/cli/registry.js +87 -0
- package/dist/src/cli/registry.js.map +1 -0
- package/dist/src/command-contract/catalog.js +36 -0
- package/dist/src/command-contract/catalog.js.map +1 -0
- package/dist/src/command-contract/help-renderer.js +39 -0
- package/dist/src/command-contract/help-renderer.js.map +1 -0
- package/dist/src/command-contract/policy.js +34 -0
- package/dist/src/command-contract/policy.js.map +1 -0
- package/dist/src/core/bus.js +17 -0
- package/dist/src/core/bus.js.map +1 -0
- package/dist/src/core/config.js +198 -0
- package/dist/src/core/config.js.map +1 -0
- package/dist/src/core/db.js +97 -0
- package/dist/src/core/db.js.map +1 -0
- package/dist/src/core/i18n.js +86 -0
- package/dist/src/core/i18n.js.map +1 -0
- package/dist/src/core/logger.js +14 -0
- package/dist/src/core/logger.js.map +1 -0
- package/dist/src/core/settings-merge.js +40 -0
- package/dist/src/core/settings-merge.js.map +1 -0
- package/dist/src/http/async-handler.js +6 -0
- package/dist/src/http/async-handler.js.map +1 -0
- package/dist/src/http/error-middleware.js +24 -0
- package/dist/src/http/error-middleware.js.map +1 -0
- package/dist/src/http/response.js +16 -0
- package/dist/src/http/response.js.map +1 -0
- package/dist/src/memory/heartbeat.js +106 -0
- package/dist/src/memory/heartbeat.js.map +1 -0
- package/dist/src/memory/memory.js +119 -0
- package/dist/src/memory/memory.js.map +1 -0
- package/dist/src/memory/worklog.js +154 -0
- package/dist/src/memory/worklog.js.map +1 -0
- package/dist/src/orchestrator/distribute.js +310 -0
- package/dist/src/orchestrator/distribute.js.map +1 -0
- package/dist/src/orchestrator/parser.js +118 -0
- package/dist/src/orchestrator/parser.js.map +1 -0
- package/dist/src/orchestrator/pipeline.js +343 -0
- package/dist/src/orchestrator/pipeline.js.map +1 -0
- package/dist/src/prompt/builder.js +531 -0
- package/dist/src/prompt/builder.js.map +1 -0
- package/dist/src/routes/browser.js +126 -0
- package/dist/src/routes/browser.js.map +1 -0
- package/dist/src/routes/quota.js +94 -0
- package/dist/src/routes/quota.js.map +1 -0
- package/dist/src/security/decode.js +23 -0
- package/dist/src/security/decode.js.map +1 -0
- package/dist/src/security/path-guards.js +62 -0
- package/dist/src/security/path-guards.js.map +1 -0
- package/dist/src/telegram/bot.js +469 -0
- package/dist/src/telegram/bot.js.map +1 -0
- package/dist/src/telegram/forwarder.js +93 -0
- package/dist/src/telegram/forwarder.js.map +1 -0
- package/package.json +80 -0
- package/public/css/chat.css +571 -0
- package/public/css/layout.css +350 -0
- package/public/css/markdown.css +270 -0
- package/public/css/modals.css +172 -0
- package/public/css/sidebar.css +225 -0
- package/public/css/variables.css +142 -0
- package/public/index.html +470 -0
- package/public/js/api.js +55 -0
- package/public/js/constants.js +119 -0
- package/public/js/features/appname.js +43 -0
- package/public/js/features/chat.js +242 -0
- package/public/js/features/employees.js +120 -0
- package/public/js/features/heartbeat.js +80 -0
- package/public/js/features/i18n.js +125 -0
- package/public/js/features/memory.js +85 -0
- package/public/js/features/settings.js +512 -0
- package/public/js/features/sidebar.js +88 -0
- package/public/js/features/skills.js +68 -0
- package/public/js/features/slash-commands.js +231 -0
- package/public/js/features/theme.js +40 -0
- package/public/js/locale.js +23 -0
- package/public/js/main.js +281 -0
- package/public/js/render.js +294 -0
- package/public/js/state.js +16 -0
- package/public/js/ui.js +172 -0
- package/public/js/ws.js +76 -0
- package/public/locales/en.json +180 -0
- package/public/locales/ko.json +180 -0
- package/public/theme-test.html +545 -0
- package/skills_ref/1password/SKILL.md +70 -0
- package/skills_ref/agents-sdk/SKILL.md +155 -0
- package/skills_ref/agents-sdk/references/callable.md +92 -0
- package/skills_ref/agents-sdk/references/codemode.md +207 -0
- package/skills_ref/agents-sdk/references/email.md +146 -0
- package/skills_ref/agents-sdk/references/mcp.md +154 -0
- package/skills_ref/agents-sdk/references/state-scheduling.md +164 -0
- package/skills_ref/agents-sdk/references/streaming-chat.md +178 -0
- package/skills_ref/agents-sdk/references/workflows.md +132 -0
- package/skills_ref/algorithmic-art/LICENSE.txt +202 -0
- package/skills_ref/algorithmic-art/SKILL.md +405 -0
- package/skills_ref/algorithmic-art/templates/generator_template.js +223 -0
- package/skills_ref/algorithmic-art/templates/viewer.html +599 -0
- package/skills_ref/apple-notes/SKILL.md +77 -0
- package/skills_ref/apple-reminders/SKILL.md +118 -0
- package/skills_ref/atlas/SKILL.md +99 -0
- package/skills_ref/brainstorming/SKILL.md +96 -0
- package/skills_ref/browser/SKILL.md +179 -0
- package/skills_ref/canvas-design/LICENSE.txt +202 -0
- package/skills_ref/canvas-design/SKILL.md +130 -0
- package/skills_ref/canvas-design/canvas-fonts/ArsenalSC-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/BigShoulders-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Boldonse-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Boldonse-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/CrimsonPro-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/DMMono-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/DMMono-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/EricaOne-OFL.txt +94 -0
- package/skills_ref/canvas-design/canvas-fonts/EricaOne-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/GeistMono-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/GeistMono-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/GeistMono-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Gloock-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Gloock-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexMono-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Italiana-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Italiana-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Jura-Light.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Jura-Medium.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Jura-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/LibreBaskerville-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/NationalPark-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/NationalPark-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/NationalPark-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/PixelifySans-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/PoiretOne-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/RedHatMono-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Silkscreen-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/SmoochSans-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/WorkSans-Bold.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/WorkSans-Italic.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/WorkSans-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/WorkSans-Regular.ttf +0 -0
- package/skills_ref/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/skills_ref/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/skills_ref/changelog-generator/SKILL.md +104 -0
- package/skills_ref/cloudflare-deploy/SKILL.md +207 -0
- package/skills_ref/codebase-orientation/SKILL.md +29 -0
- package/skills_ref/config-file-explainer/SKILL.md +26 -0
- package/skills_ref/context-compression/SKILL.md +265 -0
- package/skills_ref/context-compression/references/evaluation-framework.md +213 -0
- package/skills_ref/context-compression/scripts/compression_evaluator.py +658 -0
- package/skills_ref/data-structure-chooser/SKILL.md +26 -0
- package/skills_ref/debugging-checklist/SKILL.md +26 -0
- package/skills_ref/debugging-helpers/CREATION-LOG.md +119 -0
- package/skills_ref/debugging-helpers/SKILL.md +296 -0
- package/skills_ref/debugging-helpers/condition-based-waiting-example.ts +158 -0
- package/skills_ref/debugging-helpers/condition-based-waiting.md +115 -0
- package/skills_ref/debugging-helpers/defense-in-depth.md +122 -0
- package/skills_ref/debugging-helpers/find-polluter.sh +63 -0
- package/skills_ref/debugging-helpers/root-cause-tracing.md +169 -0
- package/skills_ref/debugging-helpers/test-academic.md +14 -0
- package/skills_ref/debugging-helpers/test-pressure-1.md +58 -0
- package/skills_ref/debugging-helpers/test-pressure-2.md +68 -0
- package/skills_ref/debugging-helpers/test-pressure-3.md +69 -0
- package/skills_ref/deep-research/.env.example +7 -0
- package/skills_ref/deep-research/README.md +246 -0
- package/skills_ref/deep-research/SKILL.md +106 -0
- package/skills_ref/deep-research/requirements.txt +2 -0
- package/skills_ref/deep-research/scripts/research.py +692 -0
- package/skills_ref/dependency-install-helper/SKILL.md +26 -0
- package/skills_ref/dev/SKILL.md +65 -0
- package/skills_ref/dev-backend/SKILL.md +61 -0
- package/skills_ref/dev-data/SKILL.md +76 -0
- package/skills_ref/dev-frontend/LICENSE.txt +177 -0
- package/skills_ref/dev-frontend/SKILL.md +42 -0
- package/skills_ref/dev-testing/LICENSE.txt +202 -0
- package/skills_ref/dev-testing/SKILL.md +96 -0
- package/skills_ref/dev-testing/examples/console_logging.py +35 -0
- package/skills_ref/dev-testing/examples/element_discovery.py +40 -0
- package/skills_ref/dev-testing/examples/static_html_automation.py +33 -0
- package/skills_ref/dev-testing/scripts/with_server.py +106 -0
- package/skills_ref/develop-web-game/SKILL.md +149 -0
- package/skills_ref/differential-review/.claude-plugin/plugin.json +10 -0
- package/skills_ref/differential-review/README.md +109 -0
- package/skills_ref/differential-review/commands/diff-review.md +21 -0
- package/skills_ref/differential-review/skills/differential-review/SKILL.md +220 -0
- package/skills_ref/differential-review/skills/differential-review/adversarial.md +203 -0
- package/skills_ref/differential-review/skills/differential-review/methodology.md +234 -0
- package/skills_ref/differential-review/skills/differential-review/patterns.md +300 -0
- package/skills_ref/differential-review/skills/differential-review/reporting.md +369 -0
- package/skills_ref/dispatching-parallel-agents/SKILL.md +180 -0
- package/skills_ref/doc-coauthoring/SKILL.md +375 -0
- package/skills_ref/docx/LICENSE.txt +30 -0
- package/skills_ref/docx/SKILL.md +481 -0
- package/skills_ref/docx/scripts/__init__.py +1 -0
- package/skills_ref/docx/scripts/accept_changes.py +135 -0
- package/skills_ref/docx/scripts/comment.py +318 -0
- package/skills_ref/docx/scripts/office/helpers/__init__.py +0 -0
- package/skills_ref/docx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills_ref/docx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills_ref/docx/scripts/office/pack.py +159 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills_ref/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills_ref/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills_ref/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills_ref/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills_ref/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills_ref/docx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills_ref/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills_ref/docx/scripts/office/soffice.py +183 -0
- package/skills_ref/docx/scripts/office/unpack.py +132 -0
- package/skills_ref/docx/scripts/office/validate.py +111 -0
- package/skills_ref/docx/scripts/office/validators/__init__.py +15 -0
- package/skills_ref/docx/scripts/office/validators/base.py +847 -0
- package/skills_ref/docx/scripts/office/validators/docx.py +446 -0
- package/skills_ref/docx/scripts/office/validators/pptx.py +275 -0
- package/skills_ref/docx/scripts/office/validators/redlining.py +247 -0
- package/skills_ref/docx/scripts/templates/comments.xml +3 -0
- package/skills_ref/docx/scripts/templates/commentsExtended.xml +3 -0
- package/skills_ref/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/skills_ref/docx/scripts/templates/commentsIds.xml +3 -0
- package/skills_ref/docx/scripts/templates/people.xml +3 -0
- package/skills_ref/durable-objects/SKILL.md +186 -0
- package/skills_ref/durable-objects/references/rules.md +286 -0
- package/skills_ref/durable-objects/references/testing.md +264 -0
- package/skills_ref/durable-objects/references/workers.md +346 -0
- package/skills_ref/email-draft-polish/SKILL.md +24 -0
- package/skills_ref/error-message-explainer/SKILL.md +27 -0
- package/skills_ref/fal-image-edit/SKILL.md +249 -0
- package/skills_ref/fal-image-edit/scripts/edit-image.sh +199 -0
- package/skills_ref/figma-implement-design/SKILL.md +264 -0
- package/skills_ref/git-worktrees/SKILL.md +218 -0
- package/skills_ref/github/SKILL.md +210 -0
- package/skills_ref/gog/SKILL.md +116 -0
- package/skills_ref/goplaces/SKILL.md +52 -0
- package/skills_ref/himalaya/SKILL.md +257 -0
- package/skills_ref/hugging-face-cli/SKILL.md +186 -0
- package/skills_ref/hugging-face-cli/references/commands.md +954 -0
- package/skills_ref/hugging-face-cli/references/examples.md +374 -0
- package/skills_ref/hugging-face-evaluation/SKILL.md +651 -0
- package/skills_ref/hugging-face-evaluation/examples/.env.example +7 -0
- package/skills_ref/hugging-face-evaluation/examples/USAGE_EXAMPLES.md +382 -0
- package/skills_ref/hugging-face-evaluation/examples/artificial_analysis_to_hub.py +141 -0
- package/skills_ref/hugging-face-evaluation/examples/example_readme_tables.md +135 -0
- package/skills_ref/hugging-face-evaluation/examples/metric_mapping.json +50 -0
- package/skills_ref/hugging-face-evaluation/requirements.txt +20 -0
- package/skills_ref/hugging-face-evaluation/scripts/evaluation_manager.py +1374 -0
- package/skills_ref/hugging-face-evaluation/scripts/inspect_eval_uv.py +104 -0
- package/skills_ref/hugging-face-evaluation/scripts/inspect_vllm_uv.py +317 -0
- package/skills_ref/hugging-face-evaluation/scripts/lighteval_vllm_uv.py +303 -0
- package/skills_ref/hugging-face-evaluation/scripts/run_eval_job.py +98 -0
- package/skills_ref/hugging-face-evaluation/scripts/run_vllm_eval_job.py +331 -0
- package/skills_ref/hugging-face-evaluation/scripts/test_extraction.py +206 -0
- package/skills_ref/hugging-face-model-trainer/SKILL.md +718 -0
- package/skills_ref/hugging-face-model-trainer/references/gguf_conversion.md +296 -0
- package/skills_ref/hugging-face-model-trainer/references/hardware_guide.md +283 -0
- package/skills_ref/hugging-face-model-trainer/references/hub_saving.md +364 -0
- package/skills_ref/hugging-face-model-trainer/references/reliability_principles.md +371 -0
- package/skills_ref/hugging-face-model-trainer/references/trackio_guide.md +189 -0
- package/skills_ref/hugging-face-model-trainer/references/training_methods.md +150 -0
- package/skills_ref/hugging-face-model-trainer/references/training_patterns.md +203 -0
- package/skills_ref/hugging-face-model-trainer/references/troubleshooting.md +282 -0
- package/skills_ref/hugging-face-model-trainer/references/unsloth.md +313 -0
- package/skills_ref/hugging-face-model-trainer/scripts/convert_to_gguf.py +424 -0
- package/skills_ref/hugging-face-model-trainer/scripts/dataset_inspector.py +417 -0
- package/skills_ref/hugging-face-model-trainer/scripts/estimate_cost.py +150 -0
- package/skills_ref/hugging-face-model-trainer/scripts/train_dpo_example.py +106 -0
- package/skills_ref/hugging-face-model-trainer/scripts/train_grpo_example.py +89 -0
- package/skills_ref/hugging-face-model-trainer/scripts/train_sft_example.py +122 -0
- package/skills_ref/hugging-face-model-trainer/scripts/unsloth_sft_example.py +512 -0
- package/skills_ref/imagegen/SKILL.md +174 -0
- package/skills_ref/insecure-defaults/.claude-plugin/plugin.json +10 -0
- package/skills_ref/insecure-defaults/README.md +45 -0
- package/skills_ref/insecure-defaults/skills/insecure-defaults/SKILL.md +117 -0
- package/skills_ref/insecure-defaults/skills/insecure-defaults/references/examples.md +409 -0
- package/skills_ref/jupyter-notebook/SKILL.md +107 -0
- package/skills_ref/linear/SKILL.md +87 -0
- package/skills_ref/linter-fix-guide/SKILL.md +27 -0
- package/skills_ref/log-summarizer/SKILL.md +27 -0
- package/skills_ref/mcp-builder/LICENSE.txt +202 -0
- package/skills_ref/mcp-builder/SKILL.md +236 -0
- package/skills_ref/mcp-builder/reference/evaluation.md +602 -0
- package/skills_ref/mcp-builder/reference/mcp_best_practices.md +249 -0
- package/skills_ref/mcp-builder/reference/node_mcp_server.md +970 -0
- package/skills_ref/mcp-builder/reference/python_mcp_server.md +719 -0
- package/skills_ref/mcp-builder/scripts/connections.py +151 -0
- package/skills_ref/mcp-builder/scripts/evaluation.py +373 -0
- package/skills_ref/mcp-builder/scripts/example_evaluation.xml +22 -0
- package/skills_ref/mcp-builder/scripts/requirements.txt +2 -0
- package/skills_ref/memory/SKILL.md +129 -0
- package/skills_ref/modern-python/.claude-plugin/plugin.json +10 -0
- package/skills_ref/modern-python/README.md +66 -0
- package/skills_ref/modern-python/hooks/hooks.json +16 -0
- package/skills_ref/modern-python/hooks/setup-shims.bats +70 -0
- package/skills_ref/modern-python/hooks/setup-shims.sh +24 -0
- package/skills_ref/modern-python/hooks/shims/pip +27 -0
- package/skills_ref/modern-python/hooks/shims/pip-shim.bats +45 -0
- package/skills_ref/modern-python/hooks/shims/pip3 +27 -0
- package/skills_ref/modern-python/hooks/shims/pipx +41 -0
- package/skills_ref/modern-python/hooks/shims/pipx-shim.bats +64 -0
- package/skills_ref/modern-python/hooks/shims/python +26 -0
- package/skills_ref/modern-python/hooks/shims/python-shim.bats +53 -0
- package/skills_ref/modern-python/hooks/shims/python3 +26 -0
- package/skills_ref/modern-python/hooks/shims/uv +27 -0
- package/skills_ref/modern-python/hooks/shims/uv-shim.bats +47 -0
- package/skills_ref/modern-python/skills/modern-python/SKILL.md +333 -0
- package/skills_ref/modern-python/skills/modern-python/references/dependabot.md +43 -0
- package/skills_ref/modern-python/skills/modern-python/references/migration-checklist.md +141 -0
- package/skills_ref/modern-python/skills/modern-python/references/pep723-scripts.md +259 -0
- package/skills_ref/modern-python/skills/modern-python/references/prek.md +211 -0
- package/skills_ref/modern-python/skills/modern-python/references/pyproject.md +254 -0
- package/skills_ref/modern-python/skills/modern-python/references/ruff-config.md +240 -0
- package/skills_ref/modern-python/skills/modern-python/references/security-setup.md +255 -0
- package/skills_ref/modern-python/skills/modern-python/references/testing.md +284 -0
- package/skills_ref/modern-python/skills/modern-python/references/uv-commands.md +200 -0
- package/skills_ref/modern-python/skills/modern-python/templates/dependabot.yml +36 -0
- package/skills_ref/modern-python/skills/modern-python/templates/pre-commit-config.yaml +66 -0
- package/skills_ref/nano-banana-pro/SKILL.md +58 -0
- package/skills_ref/netlify-deploy/SKILL.md +233 -0
- package/skills_ref/notion/SKILL.md +304 -0
- package/skills_ref/notion-knowledge-capture/SKILL.md +56 -0
- package/skills_ref/notion-meeting-intelligence/SKILL.md +60 -0
- package/skills_ref/notion-research-documentation/SKILL.md +59 -0
- package/skills_ref/notion-spec-to-implementation/SKILL.md +58 -0
- package/skills_ref/obsidian/SKILL.md +81 -0
- package/skills_ref/openai-docs/SKILL.md +56 -0
- package/skills_ref/openhue/SKILL.md +112 -0
- package/skills_ref/pdf/SKILL.md +69 -0
- package/skills_ref/postgres/README.md +77 -0
- package/skills_ref/postgres/SKILL.md +129 -0
- package/skills_ref/postgres/connections.example.json +34 -0
- package/skills_ref/postgres/requirements.txt +1 -0
- package/skills_ref/postgres/scripts/query.py +262 -0
- package/skills_ref/pptx/LICENSE.txt +30 -0
- package/skills_ref/pptx/SKILL.md +232 -0
- package/skills_ref/pptx/editing.md +205 -0
- package/skills_ref/pptx/pptxgenjs.md +420 -0
- package/skills_ref/pptx/scripts/__init__.py +0 -0
- package/skills_ref/pptx/scripts/add_slide.py +195 -0
- package/skills_ref/pptx/scripts/clean.py +286 -0
- package/skills_ref/pptx/scripts/office/helpers/__init__.py +0 -0
- package/skills_ref/pptx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills_ref/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills_ref/pptx/scripts/office/pack.py +159 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills_ref/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills_ref/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills_ref/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills_ref/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills_ref/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills_ref/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills_ref/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills_ref/pptx/scripts/office/soffice.py +183 -0
- package/skills_ref/pptx/scripts/office/unpack.py +132 -0
- package/skills_ref/pptx/scripts/office/validate.py +111 -0
- package/skills_ref/pptx/scripts/office/validators/__init__.py +15 -0
- package/skills_ref/pptx/scripts/office/validators/base.py +847 -0
- package/skills_ref/pptx/scripts/office/validators/docx.py +446 -0
- package/skills_ref/pptx/scripts/office/validators/pptx.py +275 -0
- package/skills_ref/pptx/scripts/office/validators/redlining.py +247 -0
- package/skills_ref/pptx/scripts/thumbnail.py +289 -0
- package/skills_ref/property-based-testing/.claude-plugin/plugin.json +9 -0
- package/skills_ref/property-based-testing/README.md +47 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/README.md +88 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/SKILL.md +123 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/design.md +191 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/generating.md +204 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/interpreting-failures.md +239 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/libraries.md +130 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/refactoring.md +181 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/reviewing.md +209 -0
- package/skills_ref/property-based-testing/skills/property-based-testing/references/strategies.md +124 -0
- package/skills_ref/react-best-practices/AGENTS.md +2934 -0
- package/skills_ref/react-best-practices/README.md +123 -0
- package/skills_ref/react-best-practices/SKILL.md +136 -0
- package/skills_ref/react-best-practices/metadata.json +15 -0
- package/skills_ref/react-best-practices/rules/_sections.md +46 -0
- package/skills_ref/react-best-practices/rules/_template.md +28 -0
- package/skills_ref/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/skills_ref/react-best-practices/rules/advanced-init-once.md +42 -0
- package/skills_ref/react-best-practices/rules/advanced-use-latest.md +39 -0
- package/skills_ref/react-best-practices/rules/async-api-routes.md +38 -0
- package/skills_ref/react-best-practices/rules/async-defer-await.md +80 -0
- package/skills_ref/react-best-practices/rules/async-dependencies.md +51 -0
- package/skills_ref/react-best-practices/rules/async-parallel.md +28 -0
- package/skills_ref/react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/skills_ref/react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/skills_ref/react-best-practices/rules/bundle-conditional.md +31 -0
- package/skills_ref/react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/skills_ref/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/skills_ref/react-best-practices/rules/bundle-preload.md +50 -0
- package/skills_ref/react-best-practices/rules/client-event-listeners.md +74 -0
- package/skills_ref/react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/skills_ref/react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/skills_ref/react-best-practices/rules/client-swr-dedup.md +56 -0
- package/skills_ref/react-best-practices/rules/js-batch-dom-css.md +107 -0
- package/skills_ref/react-best-practices/rules/js-cache-function-results.md +80 -0
- package/skills_ref/react-best-practices/rules/js-cache-property-access.md +28 -0
- package/skills_ref/react-best-practices/rules/js-cache-storage.md +70 -0
- package/skills_ref/react-best-practices/rules/js-combine-iterations.md +32 -0
- package/skills_ref/react-best-practices/rules/js-early-exit.md +50 -0
- package/skills_ref/react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/skills_ref/react-best-practices/rules/js-index-maps.md +37 -0
- package/skills_ref/react-best-practices/rules/js-length-check-first.md +49 -0
- package/skills_ref/react-best-practices/rules/js-min-max-loop.md +82 -0
- package/skills_ref/react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/skills_ref/react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/skills_ref/react-best-practices/rules/rendering-activity.md +26 -0
- package/skills_ref/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/skills_ref/react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/skills_ref/react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/skills_ref/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/skills_ref/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/skills_ref/react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
- package/skills_ref/react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/skills_ref/react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/skills_ref/react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/skills_ref/react-best-practices/rules/rerender-dependencies.md +45 -0
- package/skills_ref/react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
- package/skills_ref/react-best-practices/rules/rerender-derived-state.md +29 -0
- package/skills_ref/react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/skills_ref/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/skills_ref/react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
- package/skills_ref/react-best-practices/rules/rerender-memo.md +44 -0
- package/skills_ref/react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
- package/skills_ref/react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/skills_ref/react-best-practices/rules/rerender-transitions.md +40 -0
- package/skills_ref/react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
- package/skills_ref/react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/skills_ref/react-best-practices/rules/server-auth-actions.md +96 -0
- package/skills_ref/react-best-practices/rules/server-cache-lru.md +41 -0
- package/skills_ref/react-best-practices/rules/server-cache-react.md +76 -0
- package/skills_ref/react-best-practices/rules/server-dedup-props.md +65 -0
- package/skills_ref/react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/skills_ref/react-best-practices/rules/server-serialization.md +38 -0
- package/skills_ref/receiving-code-review/SKILL.md +213 -0
- package/skills_ref/registry.json +1493 -0
- package/skills_ref/render-deploy/SKILL.md +462 -0
- package/skills_ref/requesting-code-review/SKILL.md +105 -0
- package/skills_ref/requesting-code-review/code-reviewer.md +146 -0
- package/skills_ref/screen-capture/SKILL.md +162 -0
- package/skills_ref/security-best-practices/LICENSE.txt +201 -0
- package/skills_ref/security-best-practices/SKILL.md +86 -0
- package/skills_ref/security-best-practices/agents/openai.yaml +4 -0
- package/skills_ref/security-best-practices/references/golang-general-backend-security.md +826 -0
- package/skills_ref/security-best-practices/references/javascript-express-web-server-security.md +1158 -0
- package/skills_ref/security-best-practices/references/javascript-general-web-frontend-security.md +747 -0
- package/skills_ref/security-best-practices/references/javascript-jquery-web-frontend-security.md +678 -0
- package/skills_ref/security-best-practices/references/javascript-typescript-nextjs-web-server-security.md +1144 -0
- package/skills_ref/security-best-practices/references/javascript-typescript-react-web-frontend-security.md +990 -0
- package/skills_ref/security-best-practices/references/javascript-typescript-vue-web-frontend-security.md +791 -0
- package/skills_ref/security-best-practices/references/python-django-web-server-security.md +882 -0
- package/skills_ref/security-best-practices/references/python-fastapi-web-server-security.md +1036 -0
- package/skills_ref/security-best-practices/references/python-flask-web-server-security.md +705 -0
- package/skills_ref/security-ownership-map/LICENSE.txt +201 -0
- package/skills_ref/security-ownership-map/SKILL.md +206 -0
- package/skills_ref/security-ownership-map/agents/openai.yaml +4 -0
- package/skills_ref/security-ownership-map/references/neo4j-import.md +60 -0
- package/skills_ref/security-ownership-map/scripts/build_ownership_map.py +956 -0
- package/skills_ref/security-ownership-map/scripts/community_maintainers.py +544 -0
- package/skills_ref/security-ownership-map/scripts/query_ownership.py +483 -0
- package/skills_ref/security-ownership-map/scripts/run_ownership_map.py +200 -0
- package/skills_ref/security-threat-model/LICENSE.txt +201 -0
- package/skills_ref/security-threat-model/SKILL.md +81 -0
- package/skills_ref/security-threat-model/agents/openai.yaml +4 -0
- package/skills_ref/security-threat-model/references/prompt-template.md +255 -0
- package/skills_ref/security-threat-model/references/security-controls-and-assets.md +32 -0
- package/skills_ref/sentry/SKILL.md +123 -0
- package/skills_ref/skill-creator/SKILL.md +372 -0
- package/skills_ref/sora/SKILL.md +153 -0
- package/skills_ref/speech/SKILL.md +144 -0
- package/skills_ref/spotify-player/SKILL.md +64 -0
- package/skills_ref/static-analysis/.claude-plugin/plugin.json +8 -0
- package/skills_ref/static-analysis/README.md +65 -0
- package/skills_ref/static-analysis/agents/semgrep-scanner.md +71 -0
- package/skills_ref/static-analysis/agents/semgrep-triager.md +107 -0
- package/skills_ref/static-analysis/skills/codeql/SKILL.md +119 -0
- package/skills_ref/static-analysis/skills/codeql/references/diagnostic-query-templates.md +339 -0
- package/skills_ref/static-analysis/skills/codeql/references/language-details.md +207 -0
- package/skills_ref/static-analysis/skills/codeql/references/performance-tuning.md +111 -0
- package/skills_ref/static-analysis/skills/codeql/references/ruleset-catalog.md +63 -0
- package/skills_ref/static-analysis/skills/codeql/references/threat-models.md +44 -0
- package/skills_ref/static-analysis/skills/codeql/workflows/build-database.md +669 -0
- package/skills_ref/static-analysis/skills/codeql/workflows/create-data-extensions.md +536 -0
- package/skills_ref/static-analysis/skills/codeql/workflows/run-analysis.md +436 -0
- package/skills_ref/static-analysis/skills/sarif-parsing/SKILL.md +479 -0
- package/skills_ref/static-analysis/skills/sarif-parsing/resources/jq-queries.md +162 -0
- package/skills_ref/static-analysis/skills/sarif-parsing/resources/sarif_helpers.py +331 -0
- package/skills_ref/static-analysis/skills/semgrep/SKILL.md +431 -0
- package/skills_ref/static-analysis/skills/semgrep/references/rulesets.md +162 -0
- package/skills_ref/static-analysis/skills/semgrep/references/scanner-task-prompt.md +102 -0
- package/skills_ref/static-analysis/skills/semgrep/references/triage-task-prompt.md +122 -0
- package/skills_ref/static-analysis/skills/semgrep/scripts/merge_triaged_sarif.py +252 -0
- package/skills_ref/summarize/SKILL.md +87 -0
- package/skills_ref/tdd/SKILL.md +371 -0
- package/skills_ref/tdd/testing-anti-patterns.md +299 -0
- package/skills_ref/telegram-send/SKILL.md +99 -0
- package/skills_ref/terraform/README.md +105 -0
- package/skills_ref/terraform/code-generation/.claude-plugin/plugin.json +30 -0
- package/skills_ref/terraform/code-generation/skills/azure-verified-modules/SKILL.md +613 -0
- package/skills_ref/terraform/code-generation/skills/terraform-style-guide/SKILL.md +353 -0
- package/skills_ref/terraform/code-generation/skills/terraform-test/SKILL.md +1669 -0
- package/skills_ref/terraform/module-generation/.claude-plugin/plugin.json +30 -0
- package/skills_ref/terraform/module-generation/skills/refactor-module/SKILL.md +538 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/SKILL.md +468 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/api-monitoring.md +543 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/component-blocks.md +476 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/deployment-blocks.md +391 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/examples.md +1529 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/linked-stacks.md +187 -0
- package/skills_ref/terraform/module-generation/skills/terraform-stacks/references/troubleshooting.md +671 -0
- package/skills_ref/terraform/provider-development/.claude-plugin/plugin.json +13 -0
- package/skills_ref/terraform/provider-development/skills/new-terraform-provider/SKILL.md +25 -0
- package/skills_ref/terraform/provider-development/skills/new-terraform-provider/assets/main.go +40 -0
- package/skills_ref/terraform/provider-development/skills/provider-actions/SKILL.md +478 -0
- package/skills_ref/terraform/provider-development/skills/provider-resources/SKILL.md +599 -0
- package/skills_ref/terraform/provider-development/skills/run-acceptance-tests/SKILL.md +41 -0
- package/skills_ref/theme-factory/LICENSE.txt +202 -0
- package/skills_ref/theme-factory/SKILL.md +59 -0
- package/skills_ref/theme-factory/theme-showcase.pdf +0 -0
- package/skills_ref/theme-factory/themes/arctic-frost.md +19 -0
- package/skills_ref/theme-factory/themes/botanical-garden.md +19 -0
- package/skills_ref/theme-factory/themes/desert-rose.md +19 -0
- package/skills_ref/theme-factory/themes/forest-canopy.md +19 -0
- package/skills_ref/theme-factory/themes/golden-hour.md +19 -0
- package/skills_ref/theme-factory/themes/midnight-galaxy.md +19 -0
- package/skills_ref/theme-factory/themes/modern-minimalist.md +19 -0
- package/skills_ref/theme-factory/themes/ocean-depths.md +19 -0
- package/skills_ref/theme-factory/themes/sunset-boulevard.md +19 -0
- package/skills_ref/theme-factory/themes/tech-innovation.md +19 -0
- package/skills_ref/things-mac/SKILL.md +86 -0
- package/skills_ref/tmux/SKILL.md +153 -0
- package/skills_ref/transcribe/SKILL.md +81 -0
- package/skills_ref/trello/SKILL.md +95 -0
- package/skills_ref/tts/SKILL.md +99 -0
- package/skills_ref/vercel-deploy/SKILL.md +115 -0
- package/skills_ref/video-downloader/SKILL.md +99 -0
- package/skills_ref/video-downloader/scripts/download_video.py +145 -0
- package/skills_ref/video-frames/SKILL.md +46 -0
- package/skills_ref/vision-click/SKILL.md +128 -0
- package/skills_ref/weather/SKILL.md +112 -0
- package/skills_ref/web-artifacts-builder/LICENSE.txt +202 -0
- package/skills_ref/web-artifacts-builder/SKILL.md +74 -0
- package/skills_ref/web-artifacts-builder/scripts/bundle-artifact.sh +54 -0
- package/skills_ref/web-artifacts-builder/scripts/init-artifact.sh +322 -0
- package/skills_ref/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
- package/skills_ref/web-perf/SKILL.md +193 -0
- package/skills_ref/web-routing/SKILL.md +26 -0
- package/skills_ref/whatsapp/SKILL.md +255 -0
- package/skills_ref/whatsapp/assets/agent-app-integration-example.json +35 -0
- package/skills_ref/whatsapp/assets/databases-example.json +11 -0
- package/skills_ref/whatsapp/assets/function-decide-route-interactive-buttons.json +6 -0
- package/skills_ref/whatsapp/assets/functions-example.json +5 -0
- package/skills_ref/whatsapp/assets/workflow-agent-simple.json +31 -0
- package/skills_ref/whatsapp/assets/workflow-api-template-wait-agent.json +59 -0
- package/skills_ref/whatsapp/assets/workflow-customer-support-intake-agent.json +56 -0
- package/skills_ref/whatsapp/assets/workflow-decision.json +83 -0
- package/skills_ref/whatsapp/assets/workflow-interactive-buttons-decide-ai.json +89 -0
- package/skills_ref/whatsapp/assets/workflow-interactive-buttons-decide-function.json +88 -0
- package/skills_ref/whatsapp/assets/workflow-linear.json +53 -0
- package/skills_ref/whatsapp/package.json +10 -0
- package/skills_ref/whatsapp/references/app-integrations.md +89 -0
- package/skills_ref/whatsapp/references/databases-reference.md +21 -0
- package/skills_ref/whatsapp/references/execution-context.md +42 -0
- package/skills_ref/whatsapp/references/function-contracts.md +55 -0
- package/skills_ref/whatsapp/references/functions-payloads.md +87 -0
- package/skills_ref/whatsapp/references/functions-reference.md +133 -0
- package/skills_ref/whatsapp/references/graph-contract.md +145 -0
- package/skills_ref/whatsapp/references/node-types.md +430 -0
- package/skills_ref/whatsapp/references/triggers.md +20 -0
- package/skills_ref/whatsapp/references/workflow-overview.md +22 -0
- package/skills_ref/whatsapp/references/workflow-reference.md +123 -0
- package/skills_ref/whatsapp/scripts/configure-prop.js +113 -0
- package/skills_ref/whatsapp/scripts/create-connect-token.js +38 -0
- package/skills_ref/whatsapp/scripts/create-function.js +64 -0
- package/skills_ref/whatsapp/scripts/create-integration.js +137 -0
- package/skills_ref/whatsapp/scripts/create-row.js +47 -0
- package/skills_ref/whatsapp/scripts/create-trigger.js +88 -0
- package/skills_ref/whatsapp/scripts/create-workflow.js +85 -0
- package/skills_ref/whatsapp/scripts/delete-integration.js +44 -0
- package/skills_ref/whatsapp/scripts/delete-row.js +49 -0
- package/skills_ref/whatsapp/scripts/delete-trigger.js +44 -0
- package/skills_ref/whatsapp/scripts/deploy-function.js +47 -0
- package/skills_ref/whatsapp/scripts/edit-graph.js +289 -0
- package/skills_ref/whatsapp/scripts/get-action-schema.js +44 -0
- package/skills_ref/whatsapp/scripts/get-context-value.js +80 -0
- package/skills_ref/whatsapp/scripts/get-execution-event.js +55 -0
- package/skills_ref/whatsapp/scripts/get-execution.js +44 -0
- package/skills_ref/whatsapp/scripts/get-function.js +43 -0
- package/skills_ref/whatsapp/scripts/get-graph.js +85 -0
- package/skills_ref/whatsapp/scripts/get-table.js +45 -0
- package/skills_ref/whatsapp/scripts/get-workflow.js +44 -0
- package/skills_ref/whatsapp/scripts/invoke-function.js +60 -0
- package/skills_ref/whatsapp/scripts/lib/databases/args.js +87 -0
- package/skills_ref/whatsapp/scripts/lib/databases/filters.js +30 -0
- package/skills_ref/whatsapp/scripts/lib/databases/kapso-api.js +70 -0
- package/skills_ref/whatsapp/scripts/lib/functions/args.js +55 -0
- package/skills_ref/whatsapp/scripts/lib/functions/kapso-api.js +70 -0
- package/skills_ref/whatsapp/scripts/lib/workflows/args.js +53 -0
- package/skills_ref/whatsapp/scripts/lib/workflows/kapso-api.js +123 -0
- package/skills_ref/whatsapp/scripts/lib/workflows/result.js +16 -0
- package/skills_ref/whatsapp/scripts/list-accounts.js +62 -0
- package/skills_ref/whatsapp/scripts/list-apps.js +42 -0
- package/skills_ref/whatsapp/scripts/list-execution-events.js +61 -0
- package/skills_ref/whatsapp/scripts/list-executions.js +53 -0
- package/skills_ref/whatsapp/scripts/list-function-invocations.js +53 -0
- package/skills_ref/whatsapp/scripts/list-functions.js +41 -0
- package/skills_ref/whatsapp/scripts/list-integrations.js +41 -0
- package/skills_ref/whatsapp/scripts/list-provider-models.js +48 -0
- package/skills_ref/whatsapp/scripts/list-tables.js +41 -0
- package/skills_ref/whatsapp/scripts/list-triggers.js +44 -0
- package/skills_ref/whatsapp/scripts/list-whatsapp-phone-numbers.js +56 -0
- package/skills_ref/whatsapp/scripts/list-workflows.js +44 -0
- package/skills_ref/whatsapp/scripts/openapi-explore.mjs +1273 -0
- package/skills_ref/whatsapp/scripts/query-rows.js +71 -0
- package/skills_ref/whatsapp/scripts/reload-props.js +110 -0
- package/skills_ref/whatsapp/scripts/resume-execution.js +75 -0
- package/skills_ref/whatsapp/scripts/search-actions.js +64 -0
- package/skills_ref/whatsapp/scripts/update-execution-status.js +51 -0
- package/skills_ref/whatsapp/scripts/update-function.js +65 -0
- package/skills_ref/whatsapp/scripts/update-graph.js +154 -0
- package/skills_ref/whatsapp/scripts/update-integration.js +82 -0
- package/skills_ref/whatsapp/scripts/update-row.js +51 -0
- package/skills_ref/whatsapp/scripts/update-trigger.js +60 -0
- package/skills_ref/whatsapp/scripts/update-workflow-settings.js +67 -0
- package/skills_ref/whatsapp/scripts/upsert-row.js +64 -0
- package/skills_ref/whatsapp/scripts/validate-graph.js +293 -0
- package/skills_ref/whatsapp/scripts/variables-delete.js +37 -0
- package/skills_ref/whatsapp/scripts/variables-list.js +55 -0
- package/skills_ref/whatsapp/scripts/variables-set.js +39 -0
- package/skills_ref/writing-plans/SKILL.md +116 -0
- package/skills_ref/xlsx/LICENSE.txt +30 -0
- package/skills_ref/xlsx/SKILL.md +292 -0
- package/skills_ref/xlsx/scripts/office/helpers/__init__.py +0 -0
- package/skills_ref/xlsx/scripts/office/helpers/merge_runs.py +199 -0
- package/skills_ref/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/skills_ref/xlsx/scripts/office/pack.py +159 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills_ref/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills_ref/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills_ref/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills_ref/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills_ref/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills_ref/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills_ref/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills_ref/xlsx/scripts/office/soffice.py +183 -0
- package/skills_ref/xlsx/scripts/office/unpack.py +132 -0
- package/skills_ref/xlsx/scripts/office/validate.py +111 -0
- package/skills_ref/xlsx/scripts/office/validators/__init__.py +15 -0
- package/skills_ref/xlsx/scripts/office/validators/base.py +847 -0
- package/skills_ref/xlsx/scripts/office/validators/docx.py +446 -0
- package/skills_ref/xlsx/scripts/office/validators/pptx.py +275 -0
- package/skills_ref/xlsx/scripts/office/validators/redlining.py +247 -0
- package/skills_ref/xlsx/scripts/recalc.py +184 -0
- package/skills_ref/xurl/SKILL.md +461 -0
|
@@ -0,0 +1,233 @@
|
|
|
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
|
+
|
|
24
|
+
## Authentication Pattern
|
|
25
|
+
|
|
26
|
+
The skill uses the **pre-authenticated Netlify CLI** approach:
|
|
27
|
+
|
|
28
|
+
1. Check authentication status with `npx netlify status`
|
|
29
|
+
2. If not authenticated, guide user through `npx netlify login`
|
|
30
|
+
3. Fail gracefully if authentication cannot be established
|
|
31
|
+
|
|
32
|
+
Authentication uses either:
|
|
33
|
+
- **Browser-based OAuth** (primary): `netlify login` opens browser for authentication
|
|
34
|
+
- **API Key** (alternative): Set `NETLIFY_AUTH_TOKEN` environment variable
|
|
35
|
+
|
|
36
|
+
## Workflow
|
|
37
|
+
|
|
38
|
+
### 1. Verify Netlify CLI Authentication
|
|
39
|
+
|
|
40
|
+
Check if the user is logged into Netlify:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx netlify status
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Expected output patterns**:
|
|
47
|
+
- ✅ Authenticated: Shows logged-in user email and site link status
|
|
48
|
+
- ❌ Not authenticated: "Not logged into any site" or authentication error
|
|
49
|
+
|
|
50
|
+
**If not authenticated**, guide the user:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
npx netlify login
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
This opens a browser window for OAuth authentication. Wait for user to complete login, then verify with `netlify status` again.
|
|
57
|
+
|
|
58
|
+
**Alternative: API Key authentication**
|
|
59
|
+
|
|
60
|
+
If browser authentication isn't available, users can set:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
export NETLIFY_AUTH_TOKEN=your_token_here
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Tokens can be generated at: https://app.netlify.com/user/applications#personal-access-tokens
|
|
67
|
+
|
|
68
|
+
### 2. Detect Site Link Status
|
|
69
|
+
|
|
70
|
+
From `netlify status` output, determine:
|
|
71
|
+
- **Linked**: Site already connected to Netlify (shows site name/URL)
|
|
72
|
+
- **Not linked**: Need to link or create site
|
|
73
|
+
|
|
74
|
+
### 3. Link to Existing Site or Create New
|
|
75
|
+
|
|
76
|
+
**If already linked** → Skip to step 4
|
|
77
|
+
|
|
78
|
+
**If not linked**, attempt to link by Git remote:
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Check if project is Git-based
|
|
82
|
+
git remote show origin
|
|
83
|
+
|
|
84
|
+
# If Git-based, extract remote URL
|
|
85
|
+
# Format: https://github.com/username/repo or git@github.com:username/repo.git
|
|
86
|
+
|
|
87
|
+
# Try to link by Git remote
|
|
88
|
+
npx netlify link --git-remote-url <REMOTE_URL>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**If link fails** (site doesn't exist on Netlify):
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
# Create new site interactively
|
|
95
|
+
npx netlify init
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
This guides user through:
|
|
99
|
+
1. Choosing team/account
|
|
100
|
+
2. Setting site name
|
|
101
|
+
3. Configuring build settings
|
|
102
|
+
4. Creating netlify.toml if needed
|
|
103
|
+
|
|
104
|
+
### 4. Verify Dependencies
|
|
105
|
+
|
|
106
|
+
Before deploying, ensure project dependencies are installed:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# For npm projects
|
|
110
|
+
npm install
|
|
111
|
+
|
|
112
|
+
# For other package managers, detect and use appropriate command
|
|
113
|
+
# yarn install, pnpm install, etc.
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 5. Deploy to Netlify
|
|
117
|
+
|
|
118
|
+
Choose deployment type based on context:
|
|
119
|
+
|
|
120
|
+
**Preview/Draft Deploy** (default for existing sites):
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
npx netlify deploy
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
This creates a deploy preview with a unique URL for testing.
|
|
127
|
+
|
|
128
|
+
**Production Deploy** (for new sites or explicit production deployments):
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
npx netlify deploy --prod
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
This deploys to the live production URL.
|
|
135
|
+
|
|
136
|
+
**Deployment process**:
|
|
137
|
+
1. CLI detects build settings (from netlify.toml or prompts user)
|
|
138
|
+
2. Builds the project locally
|
|
139
|
+
3. Uploads built assets to Netlify
|
|
140
|
+
4. Returns deployment URL
|
|
141
|
+
|
|
142
|
+
### 6. Report Results
|
|
143
|
+
|
|
144
|
+
After deployment, report to user:
|
|
145
|
+
- **Deploy URL**: Unique URL for this deployment
|
|
146
|
+
- **Site URL**: Production URL (if production deploy)
|
|
147
|
+
- **Deploy logs**: Link to Netlify dashboard for logs
|
|
148
|
+
- **Next steps**: Suggest `netlify open` to view site or dashboard
|
|
149
|
+
|
|
150
|
+
## Handling netlify.toml
|
|
151
|
+
|
|
152
|
+
If a `netlify.toml` file exists, the CLI uses it automatically. If not, the CLI will prompt for:
|
|
153
|
+
- **Build command**: e.g., `npm run build`, `next build`
|
|
154
|
+
- **Publish directory**: e.g., `dist`, `build`, `.next`
|
|
155
|
+
|
|
156
|
+
Common framework defaults:
|
|
157
|
+
- **Next.js**: build command `npm run build`, publish `.next`
|
|
158
|
+
- **React (Vite)**: build command `npm run build`, publish `dist`
|
|
159
|
+
- **Static HTML**: no build command, publish current directory
|
|
160
|
+
|
|
161
|
+
The skill should detect framework from `package.json` if possible and suggest appropriate settings.
|
|
162
|
+
|
|
163
|
+
## Example Full Workflow
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
# 1. Check authentication
|
|
167
|
+
npx netlify status
|
|
168
|
+
|
|
169
|
+
# If not authenticated:
|
|
170
|
+
npx netlify login
|
|
171
|
+
|
|
172
|
+
# 2. Link site (if needed)
|
|
173
|
+
# Try Git-based linking first
|
|
174
|
+
git remote show origin
|
|
175
|
+
npx netlify link --git-remote-url https://github.com/user/repo
|
|
176
|
+
|
|
177
|
+
# If no site exists, create new one:
|
|
178
|
+
npx netlify init
|
|
179
|
+
|
|
180
|
+
# 3. Install dependencies
|
|
181
|
+
npm install
|
|
182
|
+
|
|
183
|
+
# 4. Deploy (preview for testing)
|
|
184
|
+
npx netlify deploy
|
|
185
|
+
|
|
186
|
+
# 5. Deploy to production (when ready)
|
|
187
|
+
npx netlify deploy --prod
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
## Error Handling
|
|
191
|
+
|
|
192
|
+
Common issues and solutions:
|
|
193
|
+
|
|
194
|
+
**"Not logged in"**
|
|
195
|
+
→ Run `npx netlify login`
|
|
196
|
+
|
|
197
|
+
**"No site linked"**
|
|
198
|
+
→ Run `npx netlify link` or `npx netlify init`
|
|
199
|
+
|
|
200
|
+
**"Build failed"**
|
|
201
|
+
→ Check build command and publish directory in netlify.toml or CLI prompts
|
|
202
|
+
→ Verify dependencies are installed
|
|
203
|
+
→ Review build logs for specific errors
|
|
204
|
+
|
|
205
|
+
**"Publish directory not found"**
|
|
206
|
+
→ Verify build command ran successfully
|
|
207
|
+
→ Check publish directory path is correct
|
|
208
|
+
|
|
209
|
+
## Environment Variables
|
|
210
|
+
|
|
211
|
+
For secrets and configuration:
|
|
212
|
+
|
|
213
|
+
1. Never commit secrets to Git
|
|
214
|
+
2. Set in Netlify dashboard: Site Settings → Environment Variables
|
|
215
|
+
3. Access in builds via `process.env.VARIABLE_NAME`
|
|
216
|
+
|
|
217
|
+
## Tips
|
|
218
|
+
|
|
219
|
+
- Use `netlify deploy` (no `--prod`) first to test before production
|
|
220
|
+
- Run `netlify open` to view site in Netlify dashboard
|
|
221
|
+
- Run `netlify logs` to view function logs (if using Netlify Functions)
|
|
222
|
+
- Use `netlify dev` for local development with Netlify Functions
|
|
223
|
+
|
|
224
|
+
## Reference
|
|
225
|
+
|
|
226
|
+
- Netlify CLI Docs: https://docs.netlify.com/cli/get-started/
|
|
227
|
+
- netlify.toml Reference: https://docs.netlify.com/configure-builds/file-based-configuration/
|
|
228
|
+
|
|
229
|
+
## Bundled References (Load As Needed)
|
|
230
|
+
|
|
231
|
+
- [CLI commands](references/cli-commands.md)
|
|
232
|
+
- [Deployment patterns](references/deployment-patterns.md)
|
|
233
|
+
- [netlify.toml guide](references/netlify-toml.md)
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: notion
|
|
3
|
+
description: Notion API for creating and managing pages, databases, and blocks.
|
|
4
|
+
homepage: https://developers.notion.com
|
|
5
|
+
metadata:
|
|
6
|
+
{
|
|
7
|
+
"openclaw":
|
|
8
|
+
{ "emoji": "📝", "requires": { "env": ["NOTION_API_KEY"] }, "primaryEnv": "NOTION_API_KEY" },
|
|
9
|
+
}
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# notion
|
|
13
|
+
|
|
14
|
+
Use the Notion API to create/read/update pages, data sources (databases), and blocks.
|
|
15
|
+
|
|
16
|
+
## Setup
|
|
17
|
+
|
|
18
|
+
1. Create an integration at https://notion.so/my-integrations
|
|
19
|
+
2. Copy the API key (starts with `ntn_` or `secret_`)
|
|
20
|
+
3. Store it:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
mkdir -p ~/.config/notion
|
|
24
|
+
echo "ntn_your_key_here" > ~/.config/notion/api_key
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
4. Share target pages/databases with your integration (click "..." → "Connect to" → your integration name)
|
|
28
|
+
|
|
29
|
+
## API Basics
|
|
30
|
+
|
|
31
|
+
All requests need:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
NOTION_KEY=$(cat ~/.config/notion/api_key)
|
|
35
|
+
curl -X GET "https://api.notion.com/v1/..." \
|
|
36
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
37
|
+
-H "Notion-Version: 2025-09-03" \
|
|
38
|
+
-H "Content-Type: application/json"
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
> **Note:** The `Notion-Version` header is required. This skill uses `2025-09-03` (latest). In this version, databases are called "data sources" in the API.
|
|
42
|
+
|
|
43
|
+
## Common Operations
|
|
44
|
+
|
|
45
|
+
**Search for pages and data sources:**
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
curl -X POST "https://api.notion.com/v1/search" \
|
|
49
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
50
|
+
-H "Notion-Version: 2025-09-03" \
|
|
51
|
+
-H "Content-Type: application/json" \
|
|
52
|
+
-d '{"query": "page title"}'
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**Get page:**
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
curl "https://api.notion.com/v1/pages/{page_id}" \
|
|
59
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
60
|
+
-H "Notion-Version: 2025-09-03"
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Get page content (blocks):**
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
curl "https://api.notion.com/v1/blocks/{page_id}/children" \
|
|
67
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
68
|
+
-H "Notion-Version: 2025-09-03"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**Create page in a data source:**
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
curl -X POST "https://api.notion.com/v1/pages" \
|
|
75
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
76
|
+
-H "Notion-Version: 2025-09-03" \
|
|
77
|
+
-H "Content-Type: application/json" \
|
|
78
|
+
-d '{
|
|
79
|
+
"parent": {"database_id": "xxx"},
|
|
80
|
+
"properties": {
|
|
81
|
+
"Name": {"title": [{"text": {"content": "New Item"}}]},
|
|
82
|
+
"Status": {"select": {"name": "Todo"}}
|
|
83
|
+
}
|
|
84
|
+
}'
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
**Query a data source (database):**
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
curl -X POST "https://api.notion.com/v1/data_sources/{data_source_id}/query" \
|
|
91
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
92
|
+
-H "Notion-Version: 2025-09-03" \
|
|
93
|
+
-H "Content-Type: application/json" \
|
|
94
|
+
-d '{
|
|
95
|
+
"filter": {"property": "Status", "select": {"equals": "Active"}},
|
|
96
|
+
"sorts": [{"property": "Date", "direction": "descending"}]
|
|
97
|
+
}'
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**Create a data source (database):**
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
curl -X POST "https://api.notion.com/v1/data_sources" \
|
|
104
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
105
|
+
-H "Notion-Version: 2025-09-03" \
|
|
106
|
+
-H "Content-Type: application/json" \
|
|
107
|
+
-d '{
|
|
108
|
+
"parent": {"page_id": "xxx"},
|
|
109
|
+
"title": [{"text": {"content": "My Database"}}],
|
|
110
|
+
"properties": {
|
|
111
|
+
"Name": {"title": {}},
|
|
112
|
+
"Status": {"select": {"options": [{"name": "Todo"}, {"name": "Done"}]}},
|
|
113
|
+
"Date": {"date": {}}
|
|
114
|
+
}
|
|
115
|
+
}'
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**Update page properties:**
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
curl -X PATCH "https://api.notion.com/v1/pages/{page_id}" \
|
|
122
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
123
|
+
-H "Notion-Version: 2025-09-03" \
|
|
124
|
+
-H "Content-Type: application/json" \
|
|
125
|
+
-d '{"properties": {"Status": {"select": {"name": "Done"}}}}'
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**Add blocks to page:**
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
curl -X PATCH "https://api.notion.com/v1/blocks/{page_id}/children" \
|
|
132
|
+
-H "Authorization: Bearer $NOTION_KEY" \
|
|
133
|
+
-H "Notion-Version: 2025-09-03" \
|
|
134
|
+
-H "Content-Type: application/json" \
|
|
135
|
+
-d '{
|
|
136
|
+
"children": [
|
|
137
|
+
{"object": "block", "type": "paragraph", "paragraph": {"rich_text": [{"text": {"content": "Hello"}}]}}
|
|
138
|
+
]
|
|
139
|
+
}'
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Property Types
|
|
143
|
+
|
|
144
|
+
Common property formats for database items:
|
|
145
|
+
|
|
146
|
+
- **Title:** `{"title": [{"text": {"content": "..."}}]}`
|
|
147
|
+
- **Rich text:** `{"rich_text": [{"text": {"content": "..."}}]}`
|
|
148
|
+
- **Select:** `{"select": {"name": "Option"}}`
|
|
149
|
+
- **Multi-select:** `{"multi_select": [{"name": "A"}, {"name": "B"}]}`
|
|
150
|
+
- **Date:** `{"date": {"start": "2024-01-15", "end": "2024-01-16"}}`
|
|
151
|
+
- **Checkbox:** `{"checkbox": true}`
|
|
152
|
+
- **Number:** `{"number": 42}`
|
|
153
|
+
- **URL:** `{"url": "https://..."}`
|
|
154
|
+
- **Email:** `{"email": "a@b.com"}`
|
|
155
|
+
- **Relation:** `{"relation": [{"id": "page_id"}]}`
|
|
156
|
+
|
|
157
|
+
## Key Differences in 2025-09-03
|
|
158
|
+
|
|
159
|
+
- **Databases → Data Sources:** Use `/data_sources/` endpoints for queries and retrieval
|
|
160
|
+
- **Two IDs:** Each database now has both a `database_id` and a `data_source_id`
|
|
161
|
+
- Use `database_id` when creating pages (`parent: {"database_id": "..."}`)
|
|
162
|
+
- Use `data_source_id` when querying (`POST /v1/data_sources/{id}/query`)
|
|
163
|
+
- **Search results:** Databases return as `"object": "data_source"` with their `data_source_id`
|
|
164
|
+
- **Parent in responses:** Pages show `parent.data_source_id` alongside `parent.database_id`
|
|
165
|
+
- **Finding the data_source_id:** Search for the database, or call `GET /v1/data_sources/{data_source_id}`
|
|
166
|
+
|
|
167
|
+
## Current Environment
|
|
168
|
+
|
|
169
|
+
### API Key
|
|
170
|
+
- **Location:** `~/.config/notion/access_token` (also copied to `~/.config/notion/api_key`)
|
|
171
|
+
- **Format:** `ntn_` prefix
|
|
172
|
+
- **Load:** `NOTION_KEY=$(cat ~/.config/notion/api_key)`
|
|
173
|
+
- **OAuth config:** `~/.config/notion/oauth.env` (client_id, client_secret, redirect_uri)
|
|
174
|
+
- **OAuth docs:** `~/Documents/BlogProject/NOTION_OAUTH_SETUP.md`
|
|
175
|
+
|
|
176
|
+
### Workspace Structure (쭈니님의 워크스페이스)
|
|
177
|
+
|
|
178
|
+
```
|
|
179
|
+
🚀 Lidge AI (루트) [3113680a-8101-81b8-9cd5-e378212151ce]
|
|
180
|
+
├── 🔬 개인 작업함 [3113680a-8101-8104-b512-db1bfa7631c0]
|
|
181
|
+
│ └── 📦 개인 실험 아카이브
|
|
182
|
+
│
|
|
183
|
+
└── 📅 2026년 3월 출범 [7458b1b1-ffd0-44ed-a38d-818bd6c03f58]
|
|
184
|
+
├── 📊 대시보드 [3113680a-8101-8174-b500-dff399ac9046]
|
|
185
|
+
├── 🎯 제품 포트폴리오
|
|
186
|
+
│ ├── 🏥 병원 댓글관리 홍보 자동화 (sujong1 기반)
|
|
187
|
+
│ ├── 🎓 학원 댓글관리 홍보 자동화 (sujong1 기반)
|
|
188
|
+
│ └── 🧮 회계·세무 RAG 상담봇
|
|
189
|
+
├── 🐾 Cliclaw [3113680a-8101-81c1-bc60-d54ddb678a2d]
|
|
190
|
+
│ ├── 📋 개요
|
|
191
|
+
│ ├── ✅ 구현 계획 체크리스트
|
|
192
|
+
│ ├── 📜 전체 개발 히스토리 (MVP → Finness 12)
|
|
193
|
+
│ └── 🔧 개발노트 (223, 224, 225, MVP)
|
|
194
|
+
├── 📋 예비창업패키지
|
|
195
|
+
├── 🏛️ 공공기관 수주 확장
|
|
196
|
+
├── ✍️ 콘텐츠
|
|
197
|
+
├── ⚙️ 운영
|
|
198
|
+
│ ├── 📝 자동화 운영 점검 노트
|
|
199
|
+
│ └── 🎯 창업지원프로그램
|
|
200
|
+
├── 🤝 회의록
|
|
201
|
+
└── 🗄️ 아카이브
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Key Page IDs (Quick Reference)
|
|
205
|
+
- **Lidge AI (root):** `3113680a-8101-81b8-9cd5-e378212151ce`
|
|
206
|
+
- **2026년 3월 출범:** `7458b1b1-ffd0-44ed-a38d-818bd6c03f58`
|
|
207
|
+
- **Cliclaw:** `3113680a-8101-81c1-bc60-d54ddb678a2d`
|
|
208
|
+
- **대시보드:** `3113680a-8101-8174-b500-dff399ac9046`
|
|
209
|
+
- **개인 작업함:** `3113680a-8101-8104-b512-db1bfa7631c0`
|
|
210
|
+
|
|
211
|
+
### Heartbeat Integration
|
|
212
|
+
- heartbeat job `notion_hourly_upgrade` (120min 주기)가 `Lidge AI/개인 작업함` 범위에서 소규모 개선 자동 수행
|
|
213
|
+
- heartbeat 설정: `~/.cli-jaw/heartbeat.json`
|
|
214
|
+
|
|
215
|
+
## Visual Design Rules (미감 가이드)
|
|
216
|
+
|
|
217
|
+
페이지를 꾸밀 때 아래 규칙을 반드시 따른다:
|
|
218
|
+
|
|
219
|
+
### 1. 멘션 링크 (이중링크) 필수
|
|
220
|
+
|
|
221
|
+
페이지 이름을 텍스트로 적지 말고, 반드시 `mention` 타입을 사용한다.
|
|
222
|
+
멘션 링크는 클릭 시 해당 페이지로 이동하고, 백링크(역참조)도 자동 생성된다.
|
|
223
|
+
|
|
224
|
+
```json
|
|
225
|
+
// ✅ 올바른 방법 — mention
|
|
226
|
+
{"type": "mention", "mention": {"type": "page", "page": {"id": "페이지-UUID"}}}
|
|
227
|
+
|
|
228
|
+
// ❌ 잘못된 방법 — 일반 텍스트
|
|
229
|
+
{"type": "text", "text": {"content": "페이지 이름"}}
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### 2. 이모지 중복 금지
|
|
233
|
+
|
|
234
|
+
멘션 링크는 페이지 아이콘을 자동으로 표시하므로, 텍스트에 이모지를 별도로 넣지 않는다.
|
|
235
|
+
|
|
236
|
+
```json
|
|
237
|
+
// ✅ 올바른 — 멘션이 알아서 "🐾 Cliclaw" 표시
|
|
238
|
+
[mention("Cliclaw"), text(" — 오픈소스 AI 터미널")]
|
|
239
|
+
|
|
240
|
+
// ❌ 잘못된 — 이모지 중복 (🐾🐾 Cliclaw)
|
|
241
|
+
[text("🐾 "), mention("Cliclaw"), text(" — 오픈소스 AI 터미널")]
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
### 3. callout 안에 멘션 링크 사용
|
|
245
|
+
|
|
246
|
+
callout 블록의 `rich_text` 배열 안에서도 mention 타입을 사용할 수 있다.
|
|
247
|
+
네비게이션 허브나 Quick Links를 만들 때 callout + mention 조합을 활용한다.
|
|
248
|
+
|
|
249
|
+
```json
|
|
250
|
+
{"object": "block", "type": "callout", "callout": {
|
|
251
|
+
"rich_text": [
|
|
252
|
+
{"type": "mention", "mention": {"type": "page", "page": {"id": "대시보드-UUID"}}},
|
|
253
|
+
{"type": "text", "text": {"content": " · "}},
|
|
254
|
+
{"type": "mention", "mention": {"type": "page", "page": {"id": "운영-UUID"}}}
|
|
255
|
+
],
|
|
256
|
+
"icon": {"type": "emoji", "emoji": "🏠"},
|
|
257
|
+
"color": "gray_background"
|
|
258
|
+
}}
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
### 4. child_page 블록 보호
|
|
262
|
+
|
|
263
|
+
페이지 블록을 삭제/재작성할 때, `child_page` 타입 블록은 절대 삭제하지 않는다.
|
|
264
|
+
삭제하면 하위 페이지가 아카이브 처리되어 사라진다.
|
|
265
|
+
|
|
266
|
+
```python
|
|
267
|
+
# 블록 삭제 시 child_page 제외
|
|
268
|
+
for block in children:
|
|
269
|
+
if block["type"] != "child_page":
|
|
270
|
+
delete_block(block["id"])
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### 5. 페이지 구조 패턴
|
|
274
|
+
|
|
275
|
+
```
|
|
276
|
+
callout (소개/슬로건) + color_background
|
|
277
|
+
divider
|
|
278
|
+
heading_2 (섹션명)
|
|
279
|
+
callout (멘션 링크 모음) + gray_background ← 네비게이션
|
|
280
|
+
divider
|
|
281
|
+
heading_2 (Quick Links)
|
|
282
|
+
bulleted_list_item (멘션 → 설명) ← 바로가기
|
|
283
|
+
divider
|
|
284
|
+
...
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### 6. 아이콘 & 커버
|
|
288
|
+
|
|
289
|
+
- 모든 페이지에 의미 있는 이모지 아이콘 설정
|
|
290
|
+
- 주요 페이지에는 Unsplash 커버 이미지 (w=1500 권장)
|
|
291
|
+
- `update_page(page_id, icon="🐾", cover_url="https://images.unsplash.com/...")`
|
|
292
|
+
|
|
293
|
+
### 7. 멘션 링크 사용 시 주의사항
|
|
294
|
+
|
|
295
|
+
- 대상 페이지가 archived 상태면 mention이 일반 텍스트로 변환됨
|
|
296
|
+
- Integration이 해당 페이지에 접근 권한이 있어야 mention 동작
|
|
297
|
+
- API rate limit: ~3 req/s — `time.sleep(0.35)` 권장
|
|
298
|
+
|
|
299
|
+
## Notes
|
|
300
|
+
|
|
301
|
+
- Page/database IDs are UUIDs (with or without dashes)
|
|
302
|
+
- The API cannot set database view filters — that's UI-only
|
|
303
|
+
- Rate limit: ~3 requests/second average
|
|
304
|
+
- Use `is_inline: true` when creating data sources to embed them in pages
|
|
@@ -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`).
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: notion-meeting-intelligence
|
|
3
|
+
description: Prepare meeting materials with Notion context and Codex research; use when gathering context, drafting agendas/pre-reads, and tailoring materials to attendees.
|
|
4
|
+
metadata:
|
|
5
|
+
short-description: Prep meetings with Notion context and tailored agendas
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Meeting Intelligence
|
|
9
|
+
|
|
10
|
+
Prep meetings by pulling Notion context, tailoring agendas/pre-reads, and enriching with Codex research.
|
|
11
|
+
|
|
12
|
+
## Quick start
|
|
13
|
+
1) Confirm meeting goal, attendees, date/time, and decisions needed.
|
|
14
|
+
2) Gather context: search with `Notion:notion-search`, then fetch with `Notion:notion-fetch` (prior notes, specs, OKRs, decisions).
|
|
15
|
+
3) Pick the right template via `reference/template-selection-guide.md` (status, decision, planning, retro, 1:1, brainstorming).
|
|
16
|
+
4) Draft agenda/pre-read in Notion with `Notion:notion-create-pages`, embedding source links and owner/timeboxes.
|
|
17
|
+
5) Enrich with Codex research (industry insights, benchmarks, risks) and update the page with `Notion:notion-update-page` as plans change.
|
|
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) Gather inputs
|
|
31
|
+
- Ask for objective, desired outcomes/decisions, attendees, duration, date/time, and prior materials.
|
|
32
|
+
- Search Notion for relevant docs, past notes, specs, and action items (`Notion:notion-search`), then fetch key pages (`Notion:notion-fetch`).
|
|
33
|
+
- Capture blockers/risks and open questions up front.
|
|
34
|
+
|
|
35
|
+
### 2) Choose format
|
|
36
|
+
- Status/update → status template.
|
|
37
|
+
- Decision/approval → decision template.
|
|
38
|
+
- Planning (sprint/project) → planning template.
|
|
39
|
+
- Retro/feedback → retrospective template.
|
|
40
|
+
- 1:1 → one-on-one template.
|
|
41
|
+
- Ideation → brainstorming template.
|
|
42
|
+
- Use `reference/template-selection-guide.md` to confirm.
|
|
43
|
+
|
|
44
|
+
### 3) Build the agenda/pre-read
|
|
45
|
+
- Start from the chosen template in `reference/` and adapt sections (context, goals, agenda, owner/time per item, decisions, risks, prep asks).
|
|
46
|
+
- Include links to pulled Notion pages and any required pre-reading.
|
|
47
|
+
- Assign owners for each agenda item; call out timeboxes and expected outputs.
|
|
48
|
+
|
|
49
|
+
### 4) Enrich with research
|
|
50
|
+
- Add concise Codex research where helpful: market/industry facts, benchmarks, risks, best practices.
|
|
51
|
+
- Keep claims cited with source links; separate fact from opinion.
|
|
52
|
+
|
|
53
|
+
### 5) Finalize and share
|
|
54
|
+
- Add next steps and owners for follow-ups.
|
|
55
|
+
- If tasks arise, create/link tasks in the relevant Notion database.
|
|
56
|
+
- Update the page via `Notion:notion-update-page` when details change; keep a brief changelog if multiple edits.
|
|
57
|
+
|
|
58
|
+
## References and examples
|
|
59
|
+
- `reference/` — template picker and meeting templates (e.g., `template-selection-guide.md`, `status-update-template.md`, `decision-meeting-template.md`, `sprint-planning-template.md`, `one-on-one-template.md`, `retrospective-template.md`, `brainstorming-template.md`).
|
|
60
|
+
- `examples/` — end-to-end meeting preps (e.g., `executive-review.md`, `project-decision.md`, `sprint-planning.md`, `customer-meeting.md`).
|