You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: configs/prompts/discord_format.md
-7Lines changed: 0 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,12 +13,6 @@ Discord does **not** support HTML, LaTeX, or tables — emitting any of these re
13
13
14
14
---
15
15
16
-
## Character Limit
17
-
18
-
Discord per-message limit is 2000 characters (Nitro 4000). Keep every response strictly within **1600 characters** (hard limit, must not exceed) to leave headroom for prefix/footer.
19
-
20
-
---
21
-
22
16
## Markdown Format (Discord rendering — strictly follow)
Copy file name to clipboardExpand all lines: configs/prompts/discord_system_prompt.md
+2-9Lines changed: 2 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,6 @@
4
4
5
5
- Markdown only — `**bold**`, `*italic*`, `` `code` ``, ```` ```lang\n…\n``` ````, `> quote`, `- bullet`, `# heading` (H1–H3 only). Full list in `discord_format`.
6
6
-**No HTML** (`<b>`, `<div>`, etc. render as literal characters). **No LaTeX, no tables.**
7
-
- Discord per-message limit is 2000 chars (Nitro 4000) — keep replies within **1600 chars**.
8
7
9
8
**Before composing the FIRST reply / push / scheduling ack in this session, call `discord_format`** to load the complete markdown reference (special tokens, code block languages, file/voice markers, supported image formats). Cached in context for the rest of the session.
10
9
@@ -32,7 +31,6 @@ You are replying to user messages in a Discord channel.
32
31
- If one sentence suffices, don't use three
33
32
34
33
### Tool Usage
35
-
- Tool usage rules remain unchanged — **never skip a tool call due to the character limit**
36
34
- After retrieving data with tools, include only the key points directly relevant to the user's question; omit redundant details
37
35
38
36
### Disambiguation (mandatory — never loop back-and-forth in text)
@@ -100,13 +98,8 @@ When a user message contains any of the following time-delay intents, **must** g
100
98
- Recent messages in the current channel are **already loaded into context** — for queries like 「之前說過什麼」、「聊過什麼」、「上次提到的內容」, **answer directly from context first without calling `search_conversation_history`**
101
99
-`search_conversation_history` is only for history beyond what is in context, or when keyword-exact matching is needed
102
100
103
-
### File Output Tasks (overrides character limit rules)
101
+
### File Output Tasks
104
102
105
103
When the final output of a task is a **local file** (md, json, txt, etc.):
106
-
-**The 1600-character limit applies only to the Discord message reply itself**, not to the file content
107
-
- File content prioritizes completeness and is not subject to the character limit
108
104
- The Discord message only needs to say "現在傳送中,檔案位於 `{path}`" (in-progress tense) and attach `[SEND_FILE:{path}]` if needed
109
-
110
-
### When Reply Is Incomplete
111
-
- If the content cannot be fully presented within the character limit, prioritize the most essential conclusion or answer
112
-
- At the end, explicitly tell the user they can ask follow-up questions or that more detail is available
105
+
- File content itself prioritizes completeness; do not duplicate the file body into the channel message
Copy file name to clipboardExpand all lines: configs/prompts/telegram_format.md
-6Lines changed: 0 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,12 +15,6 @@ If a single character of markdown (`**`, `__`, `` ` ``, leading `-` / `*` / `#`)
15
15
16
16
---
17
17
18
-
## Character Limit
19
-
20
-
Telegram message text limit is 4096 characters — keep every response strictly within **3500 characters** (hard limit; reserves headroom for escape expansion).
21
-
22
-
---
23
-
24
18
## HTML Format (Telegram rendering — strictly follow)
Copy file name to clipboardExpand all lines: configs/prompts/telegram_system_prompt.md
+2-9Lines changed: 2 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,6 @@
5
5
- HTML only — `<b>`, `<i>`, `<code>`, `<pre>`, `<a href>`, `<blockquote>` (full list in `telegram_format`).
6
6
-**Forbidden markdown — any of these leaks renders as literal characters and breaks the message:**`**bold**`, `__underline__`, `` `code` ``, leading `#`, leading `-` / `*` bullets, `[text](url)`, ``````lang `````` fences.
7
7
-**Self-check before every send:** scan the message for `**`, `__`, `~~`, `` ` ``, `#`, `- ` / `* ` at line start, `[..](..)`. If present, rewrite using HTML tags (e.g. `**x**` → `<b>x</b>`; `` `x` `` → `<code>x</code>`; `- x` → `• x`).
8
-
- Telegram message limit is 4096 chars — keep replies within **3500 chars**.
9
8
10
9
**Before composing the FIRST reply / push / scheduling ack in this session, call `telegram_format`** to load the complete HTML reference (allowed tags, escape rules, file/voice markers, concrete rewrite table). Cached in context for the rest of the session.
11
10
@@ -33,7 +32,6 @@ You are replying to user messages in a Telegram chat.
33
32
- If one sentence suffices, don't use three
34
33
35
34
### Tool Usage
36
-
- Tool usage rules remain unchanged — **never skip a tool call due to the character limit**
37
35
- After retrieving data with tools, include only the key points directly relevant to the user's question; omit redundant details
38
36
39
37
### Disambiguation (mandatory — never loop back-and-forth in text)
@@ -101,13 +99,8 @@ When a user message contains any of the following time-delay intents, **must** g
101
99
- Recent messages in the current chat are **already loaded into context** — for queries like 「之前說過什麼」、「聊過什麼」、「上次提到的內容」, **answer directly from context first without calling `search_conversation_history`**
102
100
-`search_conversation_history` is only for history beyond what is in context, or when keyword-exact matching is needed
103
101
104
-
### File Output Tasks (overrides character limit rules)
102
+
### File Output Tasks
105
103
106
104
When the final output of a task is a **local file** (md, json, txt, etc.):
107
-
-**The 3500-character limit applies only to the Telegram message reply itself**, not to the file content
108
-
- File content prioritizes completeness and is not subject to the character limit
109
105
- The Telegram message only needs to say "現在傳送中,檔案位於 <code>{path}</code>" (in-progress tense) and attach `[SEND_FILE:{path}]` if needed
110
-
111
-
### When Reply Is Incomplete
112
-
- If the content cannot be fully presented within the character limit, prioritize the most essential conclusion or answer
113
-
- At the end, explicitly tell the user they can ask follow-up questions or that more detail is available
106
+
- File content itself prioritizes completeness; do not duplicate the file body into the chat message
Copy file name to clipboardExpand all lines: extensions/apis/themealdb.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
{
2
2
"name": "themealdb_search",
3
-
"description": "[system-default] Search recipes from TheMealDB by name.",
3
+
"description": "[system-default] Search TheMealDB recipes by meal name. Returns ingredients, instructions, image, YouTube link. Use when the user names a specific recipe.",
Copy file name to clipboardExpand all lines: extensions/skills/api-tool-add/SKILL.md
+11-9Lines changed: 11 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -246,8 +246,8 @@ multiSelect: false
246
246
247
247
```json
248
248
{
249
-
"name": "get_user",
250
-
"description": "Retrieve userprofile by ID.",
249
+
"name": "fetch_user_profile",
250
+
"description": "Retrieve a user's full profile (name, email, role, audit timestamps) from the example.com user directory. Use when the user mentions a user ID or asks 'who is X', 'what's user 42's role', or before any operation that needs to verify a user exists. Prefer over list_users when you already know the exact user_id — list_users is paginated and slower for single-record lookups.",
251
251
"endpoint": {
252
252
"url": "https://api.example.com/users/{user_id}",
253
253
"method": "GET",
@@ -267,12 +267,12 @@ multiSelect: false
267
267
"parameters": {
268
268
"user_id": {
269
269
"type": "string",
270
-
"description": "User identifier, matches {user_id} in URL path.",
270
+
"description": "Numeric user identifier as a string (e.g. \"42\", \"10293\"). Matches {user_id} placeholder in the URL path. Must be the canonical ID, not username or email — use search_users first if you only have name/email.",
271
271
"required": true
272
272
},
273
273
"include_deleted": {
274
274
"type": "boolean",
275
-
"description": "Include soft-deletedusers when true.",
275
+
"description": "When true, includes users with deleted_at != null (soft-deleted). Default false returns 404 for soft-deleted users. Set true only for audit / compliance use cases where deletion history matters.",
"description":"Compute RSI (Relative Strength Index) for a given ticker over N periods.",
359
+
"name":"calculate_rsi",
360
+
"description":"Compute the Relative Strength Index (RSI) momentum oscillator for a given ticker over N trading periods. Use when the user asks 'is X overbought/oversold', 'compute RSI for Y', or mentions any momentum / mean-reversion analysis. RSI > 70 typically signals overbought, < 30 oversold — the tool returns the raw number plus a derived signal label. Pair with fetch_yahoo_finance when you need the underlying OHLCV data first.",
357
361
"always_allow":true,
358
362
"parameters": {
359
363
"type":"object",
360
364
"properties": {
361
365
"symbol": {
362
366
"type":"string",
363
-
"description":"Ticker symbol such as AAPL, SPY, BTC-USD."
367
+
"description":"Ticker symbol in Yahoo Finance format (e.g. \"AAPL\" for stocks, \"BTC-USD\" for crypto, \"^GSPC\" for indices). Case-insensitive but uppercase is preferred. Must be a single ticker — for batch use, call the tool repeatedly."
364
368
},
365
369
"period": {
366
370
"type":"integer",
367
-
"description":"RSI period in trading days, integer between 2 and 200.",
371
+
"description":"RSI lookback window in trading days. Integer between 2 and 200 (typical: 14 for daily, 9 for short-term, 25 for swing trading). Larger periods smooth the signal but lag price action.",
0 commit comments