hololake-world/AGENTS/AGENTS.md

189 lines
8.8 KiB
Markdown
Raw Permalink 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.

---
type: "Note"
_organized: "true"
related_to:
- "[[光湖语言世界 · 总入口 · 所有人从这里进]]"
- "[[🧭 霜砚 · 总控人格系统 · 母语导航页 · 5TH-LE-SY-NAV-001 b8463f86479348139b5744dd5e995c53]]"
- "[[🪨 光之湖·门碑 · 语言源代码公理 · 5TH-LE-LK-AXIOM-001 4b4c6c44b2334d56acda8f95f8f69919]]"
- "[[hololake]]"
- "[[wikilinks]]"
- "[[filename]]"
- "[[Note Title]]"
- "[[filename|display text]]"
- "[[光湖MCP技能包]]"
belongs_to:
- "[[INDEX · 光湖语言世界 · 顶层入口]]"
---
# AGENTS.md — HoloLake Vault
This is a [HoloLake](https://github.com/refactoringhq/hololake) vault.
## 🌊 光湖语言世界 · 本地知识库
本 vault 是**光湖语言世界的本地原生落点**——不依赖任何云平台,文件以 Markdown 存储在本地文件系统HoloLake 仅作为阅读器和编辑器。
### 三面架构
```
Notion → 人类体验层 · 给人看的界面
HoloLake → 人格体平面 · 霜砚的工作台 ← 你在这里
代码仓库 → 世界事实层 · Git 历史 · 铸渊执行层
```
### 入口
- **总入口**: [[光湖语言世界 · 总入口 · 所有人从这里进]](永恒湖心)
- **霜砚主控台**: [[🧭 霜砚 · 总控人格系统 · 母语导航页 · 5TH-LE-SY-NAV-001 b8463f86479348139b5744dd5e995c53]]
- **世界公理**: [[🪨 光之湖·门碑 · 语言源代码公理 · 5TH-LE-LK-AXIOM-001 4b4c6c44b2334d56acda8f95f8f69919]]
### 三大域
| 目录 | 定位 | 对应HLDP路径 |
|------|------|-------------|
| `第五域 · Fifth Domain/` | 系统架构层 | HLDP://fifth-domain |
| `永恒湖心系统 · Eternal Lake Heart/` | 语言主控层 | HLDP://eternal-lake-heart |
| `心跳核心频道 · Heartbeat Core/` | 冰朔个人层 | HLDP://heartbeat-core |
### 人格体操作约定
- 霜砚AG-SY-01是本 vault 的系统主控人格体
- 所有笔记的 type 从 `Note` 升级为 光湖类型体系(见 §Types
- wikilink 串联 = 语言路径导航,不做孤立页面
- 新建笔记 → 走 HLDP 路径命名 → 注册到对应域索引
- ⌘ 三脉同步: 新建=更新钥匙脉+路径脉 · 结束=更新时间脉
Keep this file focused on vault-specific conventions. For general HoloLake behavior, use the bundled HoloLake agent docs path provided by the app session context.
## Core conventions
- Notes are Markdown files.
- Use the first H1 as the note title. HoloLake uses this title in the note list, wikilinks, search, and other display surfaces.
- Store note type in the `type:` frontmatter field.
- Use wikilinks in body text and frontmatter fields to connect notes.
- Prefer types and relationships for organization. Folder structure is optional and should not be treated as the primary source of meaning.
- HoloLake reads notes recursively from all folders and stores new notes in the vault root by default.
- Saved views live in `views/*.yml`.
- Files in `attachments/` are assets, not notes. Reference them from notes, but do not treat them as notes or types.
- Frontmatter properties that start with `_` are usually HoloLake-managed state. Leave them alone unless the user explicitly asks for them to change.
## Notes
```yaml
---
type: Note
related_to: "[[hololake]]"
status: Active
url: https://example.com
---
# Example note
Body content in Markdown.
```
## Types
Types are regular notes with `type: Type`. They define how notes of that type appear and which properties or relationships should be suggested for new notes.
```yaml
---
type: Type
_icon: rocket
_color: "#3b82f6"
_order: 0
_list_properties_display:
- related_to
_sort: "property:onboarding:asc"
---
# Project
```
Empty properties and relationships in a type document become placeholders on new notes of that type. Values attached to properties in the type document become defaults for type instances.
Useful type metadata includes `icon`/`_icon`, `color`/`_color`, `order`/`_order`, `sidebar label`, `_list_properties_display`, `_sort`, `template`, `view`, and `visible`. When editing an existing file, preserve the key style already used there instead of mass-normalizing underscored keys.
## Relationships
Any frontmatter property whose value contains `[[wikilinks]]` is treated as a relationship. Common relationship keys include `related_to`, `belongs_to`, and `has`, but custom relationship names are valid too.
Preserve older relationship labels such as `Belongs to:` when editing existing notes that already use them.
Use quoted wikilinks for scalar frontmatter values and YAML lists for multi-value relationships.
## Wikilinks
- `[[filename]]` or `[[Note Title]]` for normal links
- `[[filename|display text]]` for custom display text
- Works in frontmatter values and Markdown body
## Views
Saved views live in `views/*.yml` and are written as YAML. HoloLake scans every `.yml` file in `views/`, and the filename is the stable view id, so use kebab-case filenames such as `active-projects.yml`.
A view definition looks like this:
```yaml
name: Active Projects
icon: null
color: null
sort: "property:onboarding:asc"
filters:
any:
- field: type
op: equals
value: Project
- field: related_to
op: contains
value: "[[hololake]]"
```
View rules that matter when creating or editing files:
- `name` is required. `icon`, `color`, and `sort` are optional.
- `sort` uses `option:direction`. Built-in options are `modified`, `created`, `title`, and `status`. Custom-property sorts use `property:<Property Name>`, for example `property:onboarding:asc`.
- `filters` must be a tree whose root is exactly one `all:` group or one `any:` group.
- Each filter condition uses `field`, `op`, and usually `value`.
- `field` can target built-ins like `type`, `status`, `title`, `favorite`, and `body`, plus actual frontmatter keys used in this vault such as `related_to`, `belongs_to`, or `url`.
- Supported operators are `equals`, `not_equals`, `contains`, `not_contains`, `any_of`, `none_of`, `is_empty`, `is_not_empty`, `before`, and `after`.
- `any_of` and `none_of` expect `value` to be a YAML list.
- `regex: true` is supported with `equals`, `not_equals`, `contains`, and `not_contains` when pattern matching is needed.
- Relationship filters can use wikilinks in `value`, for example `"[[hololake]]"`.
- Do not create JSON view files or `.view.json` filenames.
## Filenames
Use kebab-case: `my-note-title.md`. One note per file.
## 光湖 MCP 技能包Guanghu MCP Pack
本 vault 已接入**光湖 MCP 技能包**——一套预配置的知识库 MCP 连接集合,覆盖 HoloLake 本地编辑与 FlowUs 息流远程读写。
**你Agent能立即使用的能力**
- **HoloLake 官方**search_notes、get_note、list_vaults、create_note、refresh_vault 等
- **自研编辑增强**read_note、update_note整篇覆盖、append_note追加、patch_note精确替换、set_frontmatter改属性
- **FlowUs 息流**API-search、API-getPage、API-updatePage、API-createDatabase 等(页面/块/多维表读写全开)
**连接入口:**
- 打开笔记 `[[光湖MCP技能包]]`(或 `光湖MCP技能包.md`),里面有完整的端点、授权码、工具清单、注册 JSON 和客户端配置。所有凭证和路径都在那张笔记里集中管理。
- 自研工具脚本位置:`/Users/bingshuolingdianyuanhe/Library/Application Support/kimi-desktop/daimon-share/daimon/skills/guanghu-mcp-pack/scripts/`
- 如果权限受限,可直接读写本 vault 的 `.md` 文件git 仓库,可回滚)。编辑后记得调用 `refresh_vault` 刷新 HoloLake UI。
**注意事项:**
- FlowUs 授权码是「零点原核」空间的读写钥匙,仅限本机/受信环境使用。
- 若用户问"怎么让其他模型也能用",指引他们去 GitHub 公开仓库(待建)或 Kimi 技能系统搜索 `guanghu-mcp-pack`
- Create and edit notes using the frontmatter and H1 conventions above.
- Create and edit type documents when the user asks for note categories or defaults.
- Add or modify relationships without breaking existing wikilinks.
- Create and edit saved views in `views/`.
- Update `AGENTS.md` only when the user asks for vault-level guidance changes.
- Search the bundled HoloLake docs when the user asks how HoloLake works or when you need product behavior beyond these base conventions.
- Use Portent as the default best-practice model when the user asks how to improve, organize, or restructure the knowledge base. Combine Portent's types, relationships, and capture -> organize -> archive lifecycle with HoloLake's type documents, properties, Inbox, archive, and saved views.
## What agents should avoid
- Do not infer note type or meaning from folders.
- Do not treat files in `attachments/` as notes, types, or view definitions.
- Do not silently overwrite an existing custom `AGENTS.md`.
- Do not rewrite installation-specific app configuration unless the user explicitly asks.