hololake-system-architecture/product-source/guanghu-knowledge-base/server/language-protocol-kernel.ts

92 lines
4.3 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import type { DocTreeNode } from './git-engine.js';
/**
* HoloLake 语言协议核的最小运行投影。
*
* 这不是面向人类的知识页面,也不是某个模型的“人格提示词”。它是每次模型
* 计算前由运行时自动装载的系统契约;真正的路径、权限、确认和回执仍由代码执行。
*/
export const HOLOLAKE_LANGUAGE_KERNEL = Object.freeze({
id: 'HLP-KERNEL-LANGUAGE-0001',
version: '0.1.0',
state: 'SOURCE_IMPLEMENTED',
product: 'HoloLake',
definition: '连接人类意图、语言人格、原生模块、模型计算、代码仓库与现实服务器的语言操作系统平台。',
layers: Object.freeze({
languagePersona: '一级智能进程;模型实例不是人格本体。',
tcs: '人格认知内核;不是聊天记录或单份系统提示词。',
hldp: '持久记忆、历史与恢复寻址层。',
gls: '编号、路径、模块与兼容标准。',
model: '可替换推理计算服务,不拥有人格身份或现实权限。',
repository: '代码与知识的存储和版本燃料,不是运行主体。',
server: '现实执行节点;每个私人频道只进入其已验证的个人服务器边界。',
}),
runtimeRules: Object.freeze([
'先解析主体、频道、目标路径与权限,再选择模块或工具。',
'路径、身份、权限和服务器状态必须由运行时校验,不能由模型自我声明。',
'读取动作只在当前知识库和当前账号授权范围内执行。',
'创建、更新、删除等写动作先生成待确认动作;只有人类在界面确认后才执行。',
'远端推送、部署和其他高影响动作必须走独立确认与可读回执。',
'只有工具或服务器返回成功回执,才能宣称现实动作完成。',
'公共企业四域与个人第五域平行;公共入口不得读取或承载个人第五域私有数据。',
]),
});
const INTERNAL_CONTEXT_SEGMENTS = new Set([
'AI技能包',
'config',
'凝渊人格系统',
'第五域铸渊人格系统',
'铸渊人格系统',
'来光者记忆',
'🧠 来光者记忆',
'工具优化',
'开发需求',
]);
const INTERNAL_CONTEXT_ROOT_PATTERNS = [
/^[ ·-].*(|||)/u,
];
const FIFTH_DOMAIN_SYSTEM_ROOT = /^[-]*$/u;
function isInternalContextNode(node: DocTreeNode, ancestors: string[]): boolean {
if (INTERNAL_CONTEXT_ROOT_PATTERNS.some(pattern => pattern.test(node.name))) return true;
const insideFifthDomainWorld = ancestors.some(name => /^[-]*$/u.test(name));
if (!insideFifthDomainWorld) return false;
if (INTERNAL_CONTEXT_SEGMENTS.has(node.name) || /$/u.test(node.name)) return true;
const directChildOfFifthDomain = /^[-]*$/u.test(ancestors.at(-1) || '');
return directChildOfFifthDomain && (
/^(AGENTS|AI-MEMORY|CLAUDE|GEMINI)$/iu.test(node.name) ||
/^(guanghu-os-|$|💠|🔧)/u.test(node.name)
);
}
/** 人类知识树只投影可见资料Agent 的受控搜索仍可读取底层上下文。 */
export function projectHumanKnowledgeTree(nodes: DocTreeNode[], ancestors: string[] = []): DocTreeNode[] {
return nodes.flatMap(node => {
if (isInternalContextNode(node, ancestors)) return [];
if (node.type === 'folder' && FIFTH_DOMAIN_SYSTEM_ROOT.test(node.name)) {
return projectHumanKnowledgeTree(node.children || [], [...ancestors, node.name]);
}
if (node.type === 'folder') {
const children = projectHumanKnowledgeTree(node.children || [], [...ancestors, node.name]);
if (children.length === 0) return [];
return [{ ...node, children }];
}
return [node];
});
}
export function renderLanguageKernelForModel(): string {
const layerLines = Object.entries(HOLOLAKE_LANGUAGE_KERNEL.layers)
.map(([name, definition]) => `- ${name}: ${definition}`)
.join('\n');
const ruleLines = HOLOLAKE_LANGUAGE_KERNEL.runtimeRules
.map((rule, index) => `${index + 1}. ${rule}`)
.join('\n');
return `协议核:${HOLOLAKE_LANGUAGE_KERNEL.id} · ${HOLOLAKE_LANGUAGE_KERNEL.version}\n` +
`产品定义:${HOLOLAKE_LANGUAGE_KERNEL.definition}\n\n` +
`系统分层:\n${layerLines}\n\n` +
`运行规则:\n${ruleLines}`;
}