60 lines
2.7 KiB
C
60 lines
2.7 KiB
C
#ifndef DIDACTYL_DEFAULT_EVENTS_H
|
|
#define DIDACTYL_DEFAULT_EVENTS_H
|
|
|
|
#define DIDACTYL_DEFAULT_SKILL_D_TAG "identity_and_rules"
|
|
#define DIDACTYL_DEFAULT_SKILL_KIND 31124
|
|
#define DIDACTYL_DEFAULT_SKILL_TAGS_JSON "[[\"d\",\"identity_and_rules\"],[\"app\",\"didactyl\"],[\"scope\",\"private\"],[\"description\",\"Agent identity and behavioral rules\"],[\"trigger\",\"dm\"],[\"filter\",\"{\\\"from\\\":\\\"admin\\\"}\"]]"
|
|
|
|
#define DIDACTYL_DEFAULT_DM_HISTORY_SKILL_D_TAG "dm_history"
|
|
#define DIDACTYL_DEFAULT_DM_HISTORY_SKILL_KIND 31124
|
|
#define DIDACTYL_DEFAULT_DM_HISTORY_SKILL_TAGS_JSON "[[\"d\",\"dm_history\"],[\"app\",\"didactyl\"],[\"scope\",\"private\"],[\"description\",\"DM conversation history for context continuity\"],[\"trigger\",\"dm\"],[\"filter\",\"{\\\"from\\\":\\\"admin\\\"}\"]]"
|
|
|
|
#define DIDACTYL_STARTUP_KIND_PROFILE 0
|
|
#define DIDACTYL_STARTUP_KIND_CONTACTS 3
|
|
#define DIDACTYL_STARTUP_KIND_RELAYS 10002
|
|
#define DIDACTYL_STARTUP_KIND_DM_RELAYS 10050
|
|
|
|
static const int DIDACTYL_DEFAULT_STARTUP_EVENT_KINDS[] = {
|
|
DIDACTYL_STARTUP_KIND_PROFILE,
|
|
DIDACTYL_STARTUP_KIND_CONTACTS,
|
|
DIDACTYL_STARTUP_KIND_RELAYS,
|
|
DIDACTYL_STARTUP_KIND_DM_RELAYS
|
|
};
|
|
|
|
#define DIDACTYL_DEFAULT_STARTUP_EVENT_KIND_COUNT ((int)(sizeof(DIDACTYL_DEFAULT_STARTUP_EVENT_KINDS) / sizeof(DIDACTYL_DEFAULT_STARTUP_EVENT_KINDS[0])))
|
|
|
|
#define DIDACTYL_DEFAULT_KIND0_PROFILE_JSON_TEMPLATE "{\"name\":\"%s\",\"display_name\":\"%s\"}"
|
|
#define DIDACTYL_DEFAULT_KIND3_CONTENT ""
|
|
#define DIDACTYL_DEFAULT_KIND3_TAGS_JSON_TEMPLATE "[[\"p\",\"%s\"]]"
|
|
#define DIDACTYL_DEFAULT_KIND10002_CONTENT ""
|
|
#define DIDACTYL_DEFAULT_KIND10050_CONTENT ""
|
|
|
|
static const char* DIDACTYL_DEFAULT_RELAYS[] = {
|
|
"wss://relay.damus.io",
|
|
"wss://nos.lol",
|
|
"wss://relay.primal.net"
|
|
};
|
|
|
|
#define DIDACTYL_DEFAULT_RELAY_COUNT ((int)(sizeof(DIDACTYL_DEFAULT_RELAYS) / sizeof(DIDACTYL_DEFAULT_RELAYS[0])))
|
|
|
|
static const char* DIDACTYL_DEFAULT_SKILL_TEMPLATE =
|
|
"# Didactyl Agent\n\n"
|
|
"You are {{my_kind0_profile}}\n\n"
|
|
"Your npub: {{my_npub}}\n\n"
|
|
"## Rules\n\n"
|
|
"- Communicate through encrypted Nostr direct messages\n"
|
|
"- Keep responses concise and clear\n"
|
|
"- Be helpful and technically accurate\n"
|
|
"- If unsure, state uncertainty directly\n"
|
|
"- Use tools when a request requires taking action\n"
|
|
"- After a tool call, base your answer on the actual tool result\n"
|
|
"- Never claim a tool was run if no tool was executed\n"
|
|
"- Maintain your task list as short-term working memory\n"
|
|
"- Never reveal your private key (nsec)\n"
|
|
"- You may share your public key (npub) with anyone";
|
|
|
|
static const char* DIDACTYL_DEFAULT_DM_HISTORY_SKILL_TEMPLATE =
|
|
"## Recent Conversation\n\n"
|
|
"{{nostr_dm_history({\"format\":\"text\",\"limit\":12})}}";
|
|
|
|
#endif |