[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M73GK7GRNB40RZCZTSR8SFPX":3,"skill-same:01M73GK7GRNB40RZCZTSR8SFPX":51},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":30,"repositoryHtmlUrl":31,"repositoryHomepageUrl":32,"ownerHtmlUrl":33,"ownerBlogUrl":34,"ownerDescription":35,"updatedAt":36,"install":37,"resources":50},"01M73GK7GRNB40RZCZTSR8SFPX","venice--venice-image-generate",null,"Generate images with Venice. Covers POST \u002Fimage\u002Fgenerate (Venice-native), POST \u002Fimages\u002Fgenerations (OpenAI-compatible), GET \u002Fimage\u002Fstyles (style presets), request fields (prompt, dimensions, cfg_scale, seed, variants, style_preset, aspect_ratio, resolution, safe_mode, watermark), and response format","Horonomos-laps\u002FYana-AI","Horonomos-laps","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F355299122?v=4","01M76B3QPXE88ET2SQPDPVATZT"," Horonomos-laps","01M72ZQRJPCYPSSWT4D00VJR2A",13,"MIT","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fvenice--venice-image-generate\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: venice--venice-image-generate\ndescription: >-\n  Generate images with Venice. Covers POST \u002Fimage\u002Fgenerate (Venice-native), POST \u002Fimages\u002Fgenerations (OpenAI-compatible), GET \u002Fimage\u002Fstyles (style presets), request fields (prompt, dimensions, cfg_scale, seed, variants, style_preset, aspect_ratio, resolution, safe_mode, watermark), and response format\norigin: \"github.com\u002Fveniceai\u002Fskills (skill: venice-image-generate)\"\nlicense: MIT\nversion: \"1.0.0\"\ncompatibility: \"yana-ai >= 0.14.0\"\n---\n\n# Venice Image Generation\n\nTwo text-to-image endpoints:\n\n1. **`POST \u002Fapi\u002Fv1\u002Fimage\u002Fgenerate`** — Venice-native, full control (negative prompts, CFG, seed, up to 4 variants).\n2. **`POST \u002Fapi\u002Fv1\u002Fimages\u002Fgenerations`** — OpenAI-compatible, fewer knobs but drop-in for the OpenAI SDK.\n\nPlus:\n\n- **`GET \u002Fapi\u002Fv1\u002Fimage\u002Fstyles`** — list of style preset names for `style_preset`.\n\nFor editing \u002F upscaling \u002F multi-image \u002F background removal, see [`venice-image-edit`](..\u002Fvenice-image-edit\u002FSKILL.md).\n\n## Use when\n\n- You need to generate images from text prompts.\n- You need multiple variants in one call.\n- You're porting from OpenAI's `images.generate` and want a zero-change SDK swap.\n- You want to browse style presets before committing to one.\n\n## `\u002Fimage\u002Fgenerate` — Venice-native\n\n### Request\n\n```bash\ncurl https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fgenerate \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"z-image-turbo\",\n    \"prompt\": \"A beautiful sunset over a mountain range\",\n    \"width\": 1024,\n    \"height\": 1024,\n    \"cfg_scale\": 7.5,\n    \"steps\": 8,\n    \"seed\": 123456789,\n    \"variants\": 1,\n    \"format\": \"webp\",\n    \"style_preset\": \"3D Model\",\n    \"safe_mode\": true\n  }'\n```\n\n### Fields\n\n| Field | Type | Default | Notes |\n|---|---|---|---|\n| `model` | string | — | **Required.** Image model ID. `GET \u002Fmodels?type=image`. |\n| `prompt` | string | — | **Required.** Max `promptCharacterLimit` from the model's `model_spec.constraints` (typically 1500–7500). |\n| `negative_prompt` | string | — | Describe what *not* to show. Same character cap as prompt. |\n| `width`, `height` | int | 1024, 1024 | ≤ 1280 each. Must be divisible by `constraints.widthHeightDivisor` on the model's `model_spec`. |\n| `aspect_ratio` | string | — | `\"1:1\"`, `\"16:9\"`, `\"9:16\"`, … — used by models like Nano Banana instead of width\u002Fheight. |\n| `resolution` | string | — | `\"1K\"`, `\"2K\"`, `\"4K\"` — used by resolution-driven models. |\n| `cfg_scale` | number | model default | 0 \u003C x ≤ 20. Higher = more prompt adherence. |\n| `steps` | int | 8 | Inference steps. Some models ignore it (e.g. Turbo). |\n| `seed` | int | 0 | `-999999999..999999999`. Use `0`\u002Fomit for random. |\n| `variants` | int | 1 | 1–4. Only if `return_binary: false`. |\n| `lora_strength` | int | — | 0–100 when model uses Loras. |\n| `style_preset` | string | — | Value from `GET \u002Fimage\u002Fstyles`. |\n| `format` | `\"webp\"`\u002F`\"png\"`\u002F`\"jpeg\"` | `webp` | Response image format. |\n| `return_binary` | bool | `false` | `true` → binary `image\u002F*` response; `false` → JSON with base64. |\n| `embed_exif_metadata` | bool | `false` | Embed prompt info in EXIF. |\n| `hide_watermark` | bool | `false` | Venice may still watermark certain content. |\n| `safe_mode` | bool | `true` | Blurs adult content. |\n| `enable_web_search` | bool | `false` | Only some models. Charges extra. |\n| `inpaint` | — | — | **Deprecated** since May 19 2025. A new inpaint API is forthcoming. |\n\n### Response (JSON, `return_binary: false`)\n\n```json\n{\n  \"id\": \"...\",\n  \"images\": [\"\u003Cbase64>\", \"\u003Cbase64>\"],\n  \"timing\": {...},\n  \"request\": {...}\n}\n```\n\nWith `return_binary: true`, response is raw `image\u002Fwebp` (or `png`\u002F`jpeg`) with matching `Content-Type`.\n\n## `\u002Fimages\u002Fgenerations` — OpenAI-compatible\n\nUse this if you're already on the OpenAI SDK. Field names match `openai.images.generate()`.\n\n```ts\nimport OpenAI from 'openai'\n\nconst client = new OpenAI({\n  apiKey: process.env.VENICE_API_KEY,\n  baseURL: 'https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1',\n})\n\nconst res = await client.images.generate({\n  model: 'z-image-turbo',\n  prompt: 'A beautiful sunset over mountain ranges',\n  size: '1024x1024',\n  response_format: 'b64_json',\n})\n\nconst b64 = res.data[0].b64_json\n```\n\n### Mapped fields\n\n| Field | Values | Notes |\n|---|---|---|\n| `model` | string, default `\"default\"` | Unknown model IDs fall back to Venice's default. |\n| `prompt` | string, ≤ 1500 chars | Required. |\n| `size` | `auto`, `256x256`, `512x512`, `1024x1024`, `1536x1024`, `1024x1536`, `1792x1024`, `1024x1792` | — |\n| `output_format` | `jpeg` \u002F `png` \u002F `webp` | Defaults to `png`. |\n| `response_format` | `b64_json` \u002F `url` | `url` returns a `data:` URL (not a hosted URL). |\n| `moderation` | `auto` (safe mode on) \u002F `low` (safe mode off) | — |\n| `n` | `1` | Venice only supports a single image per call here. |\n| `quality`, `style` (`vivid`\u002F`natural`), `background`, `output_compression`, `user` | — | Accepted for OpenAI compat, not used by Venice. |\n\nIf you need `variants`, `seed`, `negative_prompt`, `cfg_scale`, or `style_preset`, switch to `\u002Fimage\u002Fgenerate`.\n\n## `\u002Fimage\u002Fstyles` — list presets\n\n```bash\ncurl https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fstyles \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\"\n```\n\nReturns a list of `styles[]`, each with a `name` you can pass to `style_preset`. Cache this — it's small and stable.\n\n## Choosing a model\n\n```bash\ncurl \"https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fmodels?type=image\" \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\"\n```\n\nInspect per-model `model_spec`:\n\n- `constraints.widthHeightDivisor` — `width` and `height` must both be divisible by this.\n- `constraints.aspectRatios[]` + `defaultAspectRatio` — if present, the model supports aspect-ratio-driven sizing.\n- `constraints.resolutions[]` + `defaultResolution` — if present, the model supports `resolution` (`1K`\u002F`2K`\u002F`4K`).\n- `constraints.steps.{default,max}` — step bounds (some models ignore `steps` entirely).\n- `constraints.promptCharacterLimit` — max prompt length (also applies to `negative_prompt`).\n- `pricing.generation.usd` — flat USD per image, or `pricing.resolutions[].usd` for resolution-tiered models.\n\nPick a model that matches the **feature + size combo** you plan to use.\n\n## Common patterns\n\n### Fixed-seed A\u002FB test\n\n```json\n{\"model\": \"z-image-turbo\", \"prompt\": \"...\", \"seed\": 42, \"variants\": 4}\n```\n\n### Aspect-ratio-driven model (Nano Banana family)\n\n```json\n{\"model\": \"nano-banana-2\", \"prompt\": \"...\", \"aspect_ratio\": \"16:9\", \"resolution\": \"2K\"}\n```\n\n(Other nano-banana variants: `nano-banana-pro`. Always verify the current ID via `GET \u002Fmodels?type=image`.)\n\n### Style preset + negative\n\n```json\n{\n  \"model\": \"z-image-turbo\",\n  \"prompt\": \"a red sports car in a parking lot\",\n  \"negative_prompt\": \"blurry, people, clouds\",\n  \"style_preset\": \"3D Model\"\n}\n```\n\n### Stream binary to disk (Node)\n\n```ts\nconst res = await fetch('https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fgenerate', {\n  method: 'POST',\n  headers: { Authorization: `Bearer ${process.env.VENICE_API_KEY}`, 'Content-Type': 'application\u002Fjson' },\n  body: JSON.stringify({ model: 'z-image-turbo', prompt: '...', return_binary: true }),\n})\nif (!res.ok) throw new Error(await res.text())\nconst buf = Buffer.from(await res.arrayBuffer())\nawait fs.writeFile('out.webp', buf)\n```\n\n## Errors\n\n| Code | Meaning |\n|---|---|\n| `400` | Bad params (e.g. dimensions not divisible by `widthHeightDivisor`, prompt too long, `variants>1` with `return_binary`). |\n| `401` | Auth or Pro-only model. |\n| `402` | Insufficient balance. Bearer: plain `{ \"error\": \"Insufficient balance\" }`; x402: `PAYMENT_REQUIRED` body + `PAYMENT-REQUIRED` header. |\n| `415` | Wrong `Content-Type` (send `application\u002Fjson` for this endpoint). |\n| `429` | Rate limited. |\n| `500` \u002F `503` | Inference or capacity issue — retry with jitter. |\n\n(Content-policy violations on `\u002Fimage\u002Fgenerate` come back as `400` with an error string, not `422` — the `422` shape is specific to audio generation paths.)\n\n## Gotchas\n\n- Each model picks one sizing idiom: either `width`\u002F`height`, `aspect_ratio` + `resolution`, or (OpenAI-compat) `size`. Match the model's `constraints`.\n- `variants > 1` requires `return_binary: false` (JSON with base64 array).\n- `steps` is ignored by fast\u002Fturbo models; they hardcode step count internally.\n- `hide_watermark: true` is advisory — Venice may still watermark content flagged by safety classifiers.\n- Old `inpaint` field is deprecated; don't use it.\n- For OpenAI-compat, `response_format: \"url\"` returns a **data URL**, not a hosted URL — plan for that if you're saving to storage.\n","# Venice Image Generation\n\nTwo text-to-image endpoints:\n\n1. **`POST \u002Fapi\u002Fv1\u002Fimage\u002Fgenerate`** — Venice-native, full control (negative prompts, CFG, seed, up to 4 variants).\n2. **`POST \u002Fapi\u002Fv1\u002Fimages\u002Fgenerations`** — OpenAI-compatible, fewer knobs but drop-in for the OpenAI SDK.\n\nPlus:\n\n- **`GET \u002Fapi\u002Fv1\u002Fimage\u002Fstyles`** — list of style preset names for `style_preset`.\n\nFor editing \u002F upscaling \u002F multi-image \u002F background removal, see [`venice-image-edit`](..\u002Fvenice-image-edit\u002FSKILL.md).\n\n## Use when\n\n- You need to generate images from text prompts.\n- You need multiple variants in one call.\n- You're porting from OpenAI's `images.generate` and want a zero-change SDK swap.\n- You want to browse style presets before committing to one.\n\n## `\u002Fimage\u002Fgenerate` — Venice-native\n\n### Request\n\n```bash\ncurl https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fgenerate \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"z-image-turbo\",\n    \"prompt\": \"A beautiful sunset over a mountain range\",\n    \"width\": 1024,\n    \"height\": 1024,\n    \"cfg_scale\": 7.5,\n    \"steps\": 8,\n    \"seed\": 123456789,\n    \"variants\": 1,\n    \"format\": \"webp\",\n    \"style_preset\": \"3D Model\",\n    \"safe_mode\": true\n  }'\n```\n\n### Fields\n\n| Field | Type | Default | Notes |\n|---|---|---|---|\n| `model` | string | — | **Required.** Image model ID. `GET \u002Fmodels?type=image`. |\n| `prompt` | string | — | **Required.** Max `promptCharacterLimit` from the model's `model_spec.constraints` (typically 1500–7500). |\n| `negative_prompt` | string | — | Describe what *not* to show. Same character cap as prompt. |\n| `width`, `height` | int | 1024, 1024 | ≤ 1280 each. Must be divisible by `constraints.widthHeightDivisor` on the model's `model_spec`. |\n| `aspect_ratio` | string | — | `\"1:1\"`, `\"16:9\"`, `\"9:16\"`, … — used by models like Nano Banana instead of width\u002Fheight. |\n| `resolution` | string | — | `\"1K\"`, `\"2K\"`, `\"4K\"` — used by resolution-driven models. |\n| `cfg_scale` | number | model default | 0 \u003C x ≤ 20. Higher = more prompt adherence. |\n| `steps` | int | 8 | Inference steps. Some models ignore it (e.g. Turbo). |\n| `seed` | int | 0 | `-999999999..999999999`. Use `0`\u002Fomit for random. |\n| `variants` | int | 1 | 1–4. Only if `return_binary: false`. |\n| `lora_strength` | int | — | 0–100 when model uses Loras. |\n| `style_preset` | string | — | Value from `GET \u002Fimage\u002Fstyles`. |\n| `format` | `\"webp\"`\u002F`\"png\"`\u002F`\"jpeg\"` | `webp` | Response image format. |\n| `return_binary` | bool | `false` | `true` → binary `image\u002F*` response; `false` → JSON with base64. |\n| `embed_exif_metadata` | bool | `false` | Embed prompt info in EXIF. |\n| `hide_watermark` | bool | `false` | Venice may still watermark certain content. |\n| `safe_mode` | bool | `true` | Blurs adult content. |\n| `enable_web_search` | bool | `false` | Only some models. Charges extra. |\n| `inpaint` | — | — | **Deprecated** since May 19 2025. A new inpaint API is forthcoming. |\n\n### Response (JSON, `return_binary: false`)\n\n```json\n{\n  \"id\": \"...\",\n  \"images\": [\"\u003Cbase64>\", \"\u003Cbase64>\"],\n  \"timing\": {...},\n  \"request\": {...}\n}\n```\n\nWith `return_binary: true`, response is raw `image\u002Fwebp` (or `png`\u002F`jpeg`) with matching `Content-Type`.\n\n## `\u002Fimages\u002Fgenerations` — OpenAI-compatible\n\nUse this if you're already on the OpenAI SDK. Field names match `openai.images.generate()`.\n\n```ts\nimport OpenAI from 'openai'\n\nconst client = new OpenAI({\n  apiKey: process.env.VENICE_API_KEY,\n  baseURL: 'https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1',\n})\n\nconst res = await client.images.generate({\n  model: 'z-image-turbo',\n  prompt: 'A beautiful sunset over mountain ranges',\n  size: '1024x1024',\n  response_format: 'b64_json',\n})\n\nconst b64 = res.data[0].b64_json\n```\n\n### Mapped fields\n\n| Field | Values | Notes |\n|---|---|---|\n| `model` | string, default `\"default\"` | Unknown model IDs fall back to Venice's default. |\n| `prompt` | string, ≤ 1500 chars | Required. |\n| `size` | `auto`, `256x256`, `512x512`, `1024x1024`, `1536x1024`, `1024x1536`, `1792x1024`, `1024x1792` | — |\n| `output_format` | `jpeg` \u002F `png` \u002F `webp` | Defaults to `png`. |\n| `response_format` | `b64_json` \u002F `url` | `url` returns a `data:` URL (not a hosted URL). |\n| `moderation` | `auto` (safe mode on) \u002F `low` (safe mode off) | — |\n| `n` | `1` | Venice only supports a single image per call here. |\n| `quality`, `style` (`vivid`\u002F`natural`), `background`, `output_compression`, `user` | — | Accepted for OpenAI compat, not used by Venice. |\n\nIf you need `variants`, `seed`, `negative_prompt`, `cfg_scale`, or `style_preset`, switch to `\u002Fimage\u002Fgenerate`.\n\n## `\u002Fimage\u002Fstyles` — list presets\n\n```bash\ncurl https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fstyles \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\"\n```\n\nReturns a list of `styles[]`, each with a `name` you can pass to `style_preset`. Cache this — it's small and stable.\n\n## Choosing a model\n\n```bash\ncurl \"https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fmodels?type=image\" \\\n  -H \"Authorization: Bearer $VENICE_API_KEY\"\n```\n\nInspect per-model `model_spec`:\n\n- `constraints.widthHeightDivisor` — `width` and `height` must both be divisible by this.\n- `constraints.aspectRatios[]` + `defaultAspectRatio` — if present, the model supports aspect-ratio-driven sizing.\n- `constraints.resolutions[]` + `defaultResolution` — if present, the model supports `resolution` (`1K`\u002F`2K`\u002F`4K`).\n- `constraints.steps.{default,max}` — step bounds (some models ignore `steps` entirely).\n- `constraints.promptCharacterLimit` — max prompt length (also applies to `negative_prompt`).\n- `pricing.generation.usd` — flat USD per image, or `pricing.resolutions[].usd` for resolution-tiered models.\n\nPick a model that matches the **feature + size combo** you plan to use.\n\n## Common patterns\n\n### Fixed-seed A\u002FB test\n\n```json\n{\"model\": \"z-image-turbo\", \"prompt\": \"...\", \"seed\": 42, \"variants\": 4}\n```\n\n### Aspect-ratio-driven model (Nano Banana family)\n\n```json\n{\"model\": \"nano-banana-2\", \"prompt\": \"...\", \"aspect_ratio\": \"16:9\", \"resolution\": \"2K\"}\n```\n\n(Other nano-banana variants: `nano-banana-pro`. Always verify the current ID via `GET \u002Fmodels?type=image`.)\n\n### Style preset + negative\n\n```json\n{\n  \"model\": \"z-image-turbo\",\n  \"prompt\": \"a red sports car in a parking lot\",\n  \"negative_prompt\": \"blurry, people, clouds\",\n  \"style_preset\": \"3D Model\"\n}\n```\n\n### Stream binary to disk (Node)\n\n```ts\nconst res = await fetch('https:\u002F\u002Fapi.venice.ai\u002Fapi\u002Fv1\u002Fimage\u002Fgenerate', {\n  method: 'POST',\n  headers: { Authorization: `Bearer ${process.env.VENICE_API_KEY}`, 'Content-Type': 'application\u002Fjson' },\n  body: JSON.stringify({ model: 'z-image-turbo', prompt: '...', return_binary: true }),\n})\nif (!res.ok) throw new Error(await res.text())\nconst buf = Buffer.from(await res.arrayBuffer())\nawait fs.writeFile('out.webp', buf)\n```\n\n## Errors\n\n| Code | Meaning |\n|---|---|\n| `400` | Bad params (e.g. dimensions not divisible by `widthHeightDivisor`, prompt too long, `variants>1` with `return_binary`). |\n| `401` | Auth or Pro-only model. |\n| `402` | Insufficient balance. Bearer: plain `{ \"error\": \"Insufficient balance\" }`; x402: `PAYMENT_REQUIRED` body + `PAYMENT-REQUIRED` header. |\n| `415` | Wrong `Content-Type` (send `application\u002Fjson` for this endpoint). |\n| `429` | Rate limited. |\n| `500` \u002F `503` | Inference or capacity issue — retry with jitter. |\n\n(Content-policy violations on `\u002Fimage\u002Fgenerate` come back as `400` with an error string, not `422` — the `422` shape is specific to audio generation paths.)\n\n## Gotchas\n\n- Each model picks one sizing idiom: either `width`\u002F`height`, `aspect_ratio` + `resolution`, or (OpenAI-compat) `size`. Match the model's `constraints`.\n- `variants > 1` requires `return_binary: false` (JSON with base64 array).\n- `steps` is ignored by fast\u002Fturbo models; they hardcode step count internally.\n- `hide_watermark: true` is advisory — Venice may still watermark content flagged by safety classifiers.\n- Old `inpaint` field is deprecated; don't use it.\n- For OpenAI-compat, `response_format: \"url\"` returns a **data URL**, not a hosted URL — plan for that if you're saving to storage.\n",{"name":5,"origin":24,"license":15,"version":25,"description":7,"compatibility":26},"github.com\u002Fveniceai\u002Fskills (skill: venice-image-generate)","1.0.0","yana-ai >= 0.14.0","main","481dcd7dd2e288b9d627a2bd017db70e64e6c6fa","core\u002Fskills\u002Fvenice--venice-image-generate",1,"https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI","https:\u002F\u002Fyana.vutam.link\u002F","https:\u002F\u002Fgithub.com\u002FHoronomos-laps","https:\u002F\u002Fyana.vutam.link","An open-source governed runtime & execution environment for multi-agent AI systems.","2026-11-11 23:56:26",{"source":8,"skillName":5,"commands":38,"prompt":48,"zipAvailable":49},[39,42,45],{"tool":40,"command":41},"npx","npx skills add Horonomos-laps\u002FYana-AI --skill venice--venice-image-generate",{"tool":43,"command":44},"bunx","bunx skills add Horonomos-laps\u002FYana-AI --skill venice--venice-image-generate",{"tool":46,"command":47},"pnpm","pnpm dlx skills add Horonomos-laps\u002FYana-AI --skill venice--venice-image-generate","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fvenice--venice-image-generate\u002FSKILL.md",true,[],[52,59,67,75,83,91],{"skillNo":53,"name":54,"nameZh":6,"description":55,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":56,"categories":57,"keywords":58,"publishedAt":19},"01M735GKET5YVYKAY62W2P5YXB","openai--sentry--sentry","Use when the user asks to inspect Sentry issues or events, summarize recent production errors, or pull basic Sentry health data via the Sentry API; perform read-only queries with the bundled script and require `SENTRY_AUTH_TOKEN`.","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fopenai--sentry--sentry\u002FSKILL.md",[],[],{"skillNo":60,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":63,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M73DCAP83T17HY7SMGK7MGFE","ito-basket-compare","Compare Itô prediction-market baskets against a user's knowledge base, portfolio notes, financial context, watchlist, or research thesis. Use for read-only basket comparison and gap analysis without investment advice or live trading.","Apache-2.0","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fito-basket-compare\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":63,"licenseFileUrl":71,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":19},"01M734CYEMZFDR3KH6SW0JP8TD","implementing-network-traffic-baselining","Build network traffic baselines from NetFlow\u002FIPFIX data using Python pandas for statistical analysis, z-score anomaly detection, and hourly\u002Fdaily traffic pattern profiling","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-network-traffic-baselining\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-network-traffic-baselining\u002FSKILL.md",[],[],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":63,"licenseFileUrl":79,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M73ASZ6NJRJM44Z2P84NGQ3Q","detecting-evasion-techniques-in-endpoint-logs","Detects defense evasion techniques used by adversaries in endpoint logs including log tampering, timestomping, process injection, and security tool disabling. Use when investigating suspicious endpoint behavior, building detection rules for evasion tactics, or conducting threat hunting for stealthy adversary activity. Activates for requests involving evasion detection, defense evasion analysis, log tampering detection, or MITRE ATT&CK TA0005.","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fdetecting-evasion-techniques-in-endpoint-logs\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002Fcore\u002Fskills\u002Fdetecting-evasion-techniques-in-endpoint-logs\u002FSKILL.md",[],[],{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":63,"licenseFileUrl":87,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":19},"01M734AFNXD06Z78QRK0VKGT7Q","implementing-microsegmentation-with-guardicore","Implementing microsegmentation using Akamai Guardicore Segmentation to map application dependencies, create granular network policies, visualize east-west traffic flows, and enforce least-privilege communication between workloads across data centers and cloud.","https:\u002F\u002Fgithub.com\u002Fyanacuti1121\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-microsegmentation-with-guardicore\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fimplementing-microsegmentation-with-guardicore\u002FSKILL.md",[],[],{"skillNo":92,"name":93,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":63,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M736TK27QMCXK0DVCH25SJN5","ramdisk-tmpfs-patterns","https:\u002F\u002Fgithub.com\u002FHoronomos-laps\u002FYana-AI\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Framdisk-tmpfs-patterns\u002FSKILL.md",[],[]]