style: 改进 SGV 相关声明
This commit is contained in:
1 parent
3dd2231c70
commit
016a45bc6e
7 files changed
+445
-353
No files matched your search
@@ -0,0 +1,4 @@
|
||||
BasedOnStyle: LLVM
|
||||
IndentWidth: 4
|
||||
TabWidth: 4
|
||||
UseTab: Never
|
||||
+418
-309
File diff suppressed because it is too large.
Load diff
+4
-4
@@ -684,8 +684,8 @@ M("agent.caps.baseline_failed",
|
||||
"the baseline request did not go through",
|
||||
"基线请求未通过"),
|
||||
M("agent.caps.line",
|
||||
"model capabilities: multimodal (image input) {vision} * tool calls {tools}{note}",
|
||||
"模型能力: 多模态 (图片输入){vision} * 工具调用 {tools}{note}"),
|
||||
"model capabilities: \n image input {vision} \n tool calls {tools}{note}",
|
||||
"模型能力: \n 图片输入 {vision} \n 工具调用 {tools}{note}"),
|
||||
M("agent.caps.no.tools",
|
||||
"no (tool table no longer sent)",
|
||||
"不支持 (不再发送工具表)"),
|
||||
@@ -694,7 +694,7 @@ M("agent.caps.no.vision",
|
||||
"不支持 (已隐藏 read_image)"),
|
||||
M("agent.caps.note",
|
||||
" — anything untested is treated as supported ({why})",
|
||||
" —— 没测出来的一律按「支持」处理 ({why})"),
|
||||
" —- 没测出来的一律按 \"支持\" 处理 ({why})"),
|
||||
M("agent.caps.unknown",
|
||||
"untested",
|
||||
"未测"),
|
||||
@@ -1141,7 +1141,7 @@ M("meta.help",
|
||||
"/help 显示本帮助\n"
|
||||
"\n"
|
||||
"其余输入都是给 meta 模型的指令, 例如: \n"
|
||||
" 把第 3 轮里我说的 "用 Python" 删掉\n"
|
||||
" 把第 3 轮里我说的 \"用 Python\" 删掉\n"
|
||||
" 第 5 轮助手那个结论是错的, 改掉\n"
|
||||
" 第 2 到 4 轮在绕圈子, 压成一段\n"),
|
||||
M("meta.turn_failed",
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ const char *t(const char *key);
|
||||
|
||||
/* 带占位符: 模板里写 {name}, 调用时按名字成对给值, 最后传 NULL.
|
||||
* tf("err.unknown_option", "option", arg, NULL)
|
||||
* 按名字匹配 (不是按位置), 所以译文可以调整语序. */
|
||||
* 按名字而非位置匹配, 所以译文可以调整语序. */
|
||||
const char *tf(const char *key, ...);
|
||||
|
||||
/* 整数转字符串 (静态轮转缓冲), 专供 tf 的参数位置用:
|
||||
|
||||
+15
-28
@@ -6,47 +6,34 @@
|
||||
*/
|
||||
#include "markdown.h"
|
||||
#include "util.h"
|
||||
|
||||
#include "sgr.h"
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
/* 样式定义 (硬编码 SGR, 不依赖 terminfo)
|
||||
*
|
||||
* **只用 16 色范围内的码**: 前景 30-37, 加粗/暗淡/斜体用 1/2/3.
|
||||
* 不用 90-97 那一段 (aixterm 的"亮色")—— 它虽然到处都是, 但严格讲不属于
|
||||
* 最窄的 16 色 ANSI, 而这段代码是硬编码 SGR、不做终端能力探测的 (连 terminfo
|
||||
* 都不查). 既然不探测, 就该待在**所有终端都认**的那一档里.
|
||||
*
|
||||
* 原来链接用的是亮蓝 (aixterm 的 94), 是这里唯一一个越界的码. 改成
|
||||
* "\033[4;36m" (下划线 + 青): 链接在终端里的传统表示本来就是下划线,
|
||||
* 而且青色和行内代码、列表符号同色系, 视觉上"这些是标记不是正文"是一致的.
|
||||
* 更重要的是下划线是**属性** (SGR 4), 比颜色更可靠 —— 单色终端、色盲用户、
|
||||
* 以及把颜色重映射过的主题里, 下划线都还在.
|
||||
*
|
||||
* (这里不写出那个越界码的字面量, 以免以后 grep `\[9[0-7]` 做审计时被注释
|
||||
* 里的这一行报成假阳性. ) */
|
||||
#define MD_RESET "\033[0m"
|
||||
#define MD_BOLD "\033[1m"
|
||||
#define MD_DIM "\033[2m"
|
||||
#define MD_ITALIC "\033[3m"
|
||||
#define MD_CODE "\033[36m" /* 行内代码: 青 */
|
||||
#define MD_BULLET "\033[36m"
|
||||
#define MD_LINK "\033[4;36m" /* 链接文字: 下划线 + 青 */
|
||||
#define MD_H1 "\033[1;36m" /* 粗体青 */
|
||||
#define MD_H2 "\033[1;35m" /* 粗体品红 */
|
||||
#define MD_H3 "\033[1;34m" /* 粗体蓝 */
|
||||
#define MD_H4 "\033[1m" /* 粗体 */
|
||||
#define MD_RESET C_OFF
|
||||
#define MD_BOLD C_BOLD
|
||||
#define MD_DIM C_DIM
|
||||
#define MD_ITALIC C_ITALIC
|
||||
#define MD_CODE C_CYAN
|
||||
#define MD_BULLET C_CYAN
|
||||
#define MD_LINK C_UNDERLINE C_CYAN
|
||||
#define MD_H1 C_BOLD C_CYAN
|
||||
#define MD_H2 C_BOLD C_MAGENTA
|
||||
#define MD_H3 C_BOLD C_BLUE
|
||||
#define MD_H4 C_BOLD
|
||||
|
||||
/* 等待更多数据 (当前字节可能是一个被切断的标记) */
|
||||
#define MD_NEED_MORE ((size_t)-1)
|
||||
|
||||
/* 待处理缓冲上限: 遇到始终等不到结束标记的超长行时直接吐出, 保证内存有界 */
|
||||
#define MD_MAX_PENDING (64 * 1024)
|
||||
|
||||
/* 候选表格行超过这个长度就不再当表格等下去, 避免长行被卡住 */
|
||||
#define MD_MAX_TABLE_LINE 4096
|
||||
|
||||
/* 表格累积多少行后强制渲染 (防止超大表格一直不输出) */
|
||||
#define MD_MAX_TABLE_ROWS 200
|
||||
#define MD_MAX_TABLE_ROWS 256
|
||||
|
||||
struct MdRenderer {
|
||||
int enabled;
|
||||
|
||||
+3
-3
@@ -31,7 +31,7 @@ static const char *META_SYSTEM_PROMPT =
|
||||
"\n"
|
||||
"## 为什么会有你\n"
|
||||
"用户想改这段历史, 通常是因为助手沿着一个他不满意的方向走下去了. 他要的\n"
|
||||
"往往不是 "省 token" , 而是**让这段历史不再诱导助手重蹈覆辙**——\n"
|
||||
"往往不是 \"省 token\" , 而是**让这段历史不再诱导助手重蹈覆辙**——\n"
|
||||
"删掉那句说错的前提、去掉那个被推翻的方案、删掉助手那次自信但错误的结论. \n"
|
||||
"另外 你拥有修改assistant的消息的能力, 这是常规的修改所不能完成的\n"
|
||||
"\n"
|
||||
@@ -41,7 +41,7 @@ static const char *META_SYSTEM_PROMPT =
|
||||
"## 工作方式\n"
|
||||
"1. 动手前先看清楚. 先 list_rounds 看目录、再 read_messages 读原文. \n"
|
||||
" 不要凭用户的转述猜内容. \n"
|
||||
"2. 改最小必要范围. 用户说 "删掉那句用 Python" , 就删那一句, \n"
|
||||
"2. 改最小必要范围. 用户说 \"删掉那句用 Python\" , 就删那一句, \n"
|
||||
" 不要顺手把整轮都删了. \n"
|
||||
"3. 用户没要求压缩就不要压缩 —— 压缩会丢证据. \n"
|
||||
"4. 每次改动后消息编号会重排. 要继续改, 先重新 list_rounds. \n"
|
||||
@@ -49,7 +49,7 @@ static const char *META_SYSTEM_PROMPT =
|
||||
"\n"
|
||||
"## 红线\n"
|
||||
"- 带 tool_calls 的 assistant 消息和紧随其后的 tool 结果是不可拆的整体, 否则会造成400错误. \n"
|
||||
"- 不要为了 "整齐" 重排顺序. \n"
|
||||
"- 不要为了 \"整齐\" 重排顺序. \n"
|
||||
"\n"
|
||||
"## 拿不准就问\n"
|
||||
"如果删掉某个点会让后面的回答失去上下文, 把这个后果指出来, 让用户决定. \n"
|
||||
|
||||
@@ -37,11 +37,3 @@
|
||||
#define C_BRIGHT_MAGENTA "\033[95m"
|
||||
#define C_BRIGHT_CYAN "\033[96m"
|
||||
#define C_BRIGHT_WHITE "\033[97m"
|
||||
|
||||
#define C_OFF "\033[0m" // 复原
|
||||
#define C_BOLD "\033[1m" // 粗体
|
||||
#define C_DIM "\033[2m" // 半亮度
|
||||
#define C_ITALIC "\033[3m" // 斜体
|
||||
#define C_CYAN "\033[36m" //
|
||||
#define C_GREEN "\033[32m"
|
||||
#define C_RED "\033[31m"
|
||||
Reference in new issue
Block a user