From 63376e57fe48fbfc2547c824a318017ffd3493c3 Mon Sep 17 00:00:00 2001 From: marvinpoo Date: Mon, 11 May 2026 00:37:54 +0200 Subject: [PATCH] skills update --- .idea/SKILL.md | 43 +++++++++++++++++++++++++++++++++++++++++++ SKILL.md | 43 +++++++++++++++++++++++++++++++++++++++++++ public/SKILL.md | 43 +++++++++++++++++++++++++++++++++++++++++++ src/SKILL.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 172 insertions(+) diff --git a/.idea/SKILL.md b/.idea/SKILL.md index 9f9ad5a..ac83848 100644 --- a/.idea/SKILL.md +++ b/.idea/SKILL.md @@ -106,6 +106,49 @@ For OpenClaw, inspect `raw` for domain-specific fields: - Placeables: production types, power/water fields, craftable recipe relationships. - NPCs: `raw.description`, `raw.npcTags`, category metadata. +## Discord Output Contract + +When OpenClaw asks for an answer intended for Discord, return Discord embed JSON instead of plain text. The bot should be able to send the returned payload directly. + +Use this shape: + +```json +{ + "embeds": [ + { + "title": "Assassin's Rifle", + "url": "https://dune.api.coppnic.cc/api/item/LongRifle_Unique_Poison_03?language=en", + "description": "Short useful summary for Discord.", + "color": 15198183, + "fields": [ + { "name": "Dataset", "value": "item", "inline": true }, + { "name": "Language", "value": "en", "inline": true }, + { "name": "Source ID", "value": "LongRifle_Unique_Poison_03", "inline": false } + ], + "footer": { "text": "Dune API" } + } + ] +} +``` + +Embed rules: + +- Use `name` or `raw.name` as the embed title. +- Use the matching Dune API URL as the embed URL. +- Keep descriptions short; do not dump the full `raw` object. +- Put compact facts in fields and omit empty fields. +- Return at most 5 embeds for search results. +- Keep field values below Discord limits. +- Use decimal colors: item `15198183`, skill `3447003`, recipe `5763719`, placeable `15844367`, npc `10181046`. + +Dataset field ideas: + +- `item`: grade, category, subcategory, weapon stats, armor stats, fillable stats. +- `skill`: category, subcategory, max skill level, level bonuses. +- `recipe`: output items, input items, crafting time, required stations. +- `placeable`: category, power, water, supported production types. +- `npc`: category, tags, description. + ## Repository Map Look here when changing behavior: diff --git a/SKILL.md b/SKILL.md index a033fb2..f26ae83 100644 --- a/SKILL.md +++ b/SKILL.md @@ -40,6 +40,49 @@ items, skills, recipes, placeables, npcs Use singular datasets for complete stats and relationships. Use plural datasets only when a compact Questlog page-summary record is enough. +## Discord Output Contract + +When OpenClaw asks for an answer intended for Discord, return Discord embed JSON instead of plain text. The bot should be able to send the returned payload directly. + +Use this shape: + +```json +{ + "embeds": [ + { + "title": "Assassin's Rifle", + "url": "https://dune.api.coppnic.cc/api/item/LongRifle_Unique_Poison_03?language=en", + "description": "Short useful summary for Discord.", + "color": 15198183, + "fields": [ + { "name": "Dataset", "value": "item", "inline": true }, + { "name": "Language", "value": "en", "inline": true }, + { "name": "Source ID", "value": "LongRifle_Unique_Poison_03", "inline": false } + ], + "footer": { "text": "Dune API" } + } + ] +} +``` + +Embed rules: + +- Use `name` or `raw.name` as the embed title. +- Use the matching Dune API URL as the embed URL. +- Keep descriptions short; do not dump the full `raw` object. +- Put compact facts in fields and omit empty fields. +- Return at most 5 embeds for search results. +- Keep field values below Discord limits. +- Use decimal colors: item `15198183`, skill `3447003`, recipe `5763719`, placeable `15844367`, npc `10181046`. + +Dataset field ideas: + +- `item`: grade, category, subcategory, weapon stats, armor stats, fillable stats. +- `skill`: category, subcategory, max skill level, level bonuses. +- `recipe`: output items, input items, crafting time, required stations. +- `placeable`: category, power, water, supported production types. +- `npc`: category, tags, description. + Repository guide: ```text diff --git a/public/SKILL.md b/public/SKILL.md index bff47e6..b7fb02c 100644 --- a/public/SKILL.md +++ b/public/SKILL.md @@ -106,6 +106,49 @@ For OpenClaw, inspect `raw` for domain-specific fields: - Placeables: production types, power/water fields, craftable recipe relationships. - NPCs: `raw.description`, `raw.npcTags`, category metadata. +## Discord Output Contract + +When OpenClaw asks for an answer intended for Discord, return Discord embed JSON instead of plain text. The bot should be able to send the returned payload directly. + +Use this shape: + +```json +{ + "embeds": [ + { + "title": "Assassin's Rifle", + "url": "https://dune.api.coppnic.cc/api/item/LongRifle_Unique_Poison_03?language=en", + "description": "Short useful summary for Discord.", + "color": 15198183, + "fields": [ + { "name": "Dataset", "value": "item", "inline": true }, + { "name": "Language", "value": "en", "inline": true }, + { "name": "Source ID", "value": "LongRifle_Unique_Poison_03", "inline": false } + ], + "footer": { "text": "Dune API" } + } + ] +} +``` + +Embed rules: + +- Use `name` or `raw.name` as the embed title. +- Use the matching Dune API URL as the embed URL. +- Keep descriptions short; do not dump the full `raw` object. +- Put compact facts in fields and omit empty fields. +- Return at most 5 embeds for search results. +- Keep field values below Discord limits. +- Use decimal colors: item `15198183`, skill `3447003`, recipe `5763719`, placeable `15844367`, npc `10181046`. + +Dataset field ideas: + +- `item`: grade, category, subcategory, weapon stats, armor stats, fillable stats. +- `skill`: category, subcategory, max skill level, level bonuses. +- `recipe`: output items, input items, crafting time, required stations. +- `placeable`: category, power, water, supported production types. +- `npc`: category, tags, description. + ## Repository Map Look here when changing behavior: diff --git a/src/SKILL.md b/src/SKILL.md index 9f9ad5a..ac83848 100644 --- a/src/SKILL.md +++ b/src/SKILL.md @@ -106,6 +106,49 @@ For OpenClaw, inspect `raw` for domain-specific fields: - Placeables: production types, power/water fields, craftable recipe relationships. - NPCs: `raw.description`, `raw.npcTags`, category metadata. +## Discord Output Contract + +When OpenClaw asks for an answer intended for Discord, return Discord embed JSON instead of plain text. The bot should be able to send the returned payload directly. + +Use this shape: + +```json +{ + "embeds": [ + { + "title": "Assassin's Rifle", + "url": "https://dune.api.coppnic.cc/api/item/LongRifle_Unique_Poison_03?language=en", + "description": "Short useful summary for Discord.", + "color": 15198183, + "fields": [ + { "name": "Dataset", "value": "item", "inline": true }, + { "name": "Language", "value": "en", "inline": true }, + { "name": "Source ID", "value": "LongRifle_Unique_Poison_03", "inline": false } + ], + "footer": { "text": "Dune API" } + } + ] +} +``` + +Embed rules: + +- Use `name` or `raw.name` as the embed title. +- Use the matching Dune API URL as the embed URL. +- Keep descriptions short; do not dump the full `raw` object. +- Put compact facts in fields and omit empty fields. +- Return at most 5 embeds for search results. +- Keep field values below Discord limits. +- Use decimal colors: item `15198183`, skill `3447003`, recipe `5763719`, placeable `15844367`, npc `10181046`. + +Dataset field ideas: + +- `item`: grade, category, subcategory, weapon stats, armor stats, fillable stats. +- `skill`: category, subcategory, max skill level, level bonuses. +- `recipe`: output items, input items, crafting time, required stations. +- `placeable`: category, power, water, supported production types. +- `npc`: category, tags, description. + ## Repository Map Look here when changing behavior: