init repo
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
## Why
|
||||
|
||||
本项目需要构建一个基于 LlamaIndex Workflow 的 Agent,使其能够动态加载和执行 SKILL(以 SKILL.md 文件定义的结构化指令集)。SKILL 是一种将领域知识、工作流程和约束规则打包为可复用模块的机制,当前项目仅有空壳入口,需要从零实现 Agent 核心和 SKILL 注入能力。为了方便线上部署,设计上避免引入 Shell/子进程调用,脚本类功能暂不支持。
|
||||
|
||||
## What Changes
|
||||
|
||||
- 引入 LlamaIndex Workflow 作为 Agent 运行时框架(新依赖:`llama-index-core`、`llama-index-llms-openai` 等)
|
||||
- 实现 SKILL 加载器:解析 SKILL.md 文件的 YAML frontmatter(name、description、metadata)和 Markdown 正文(instructions、steps、guardrails)
|
||||
- 实现 SKILL 注入机制:将 SKILL 内容动态注入 Agent 的 system prompt,作为行为指令扩展
|
||||
- 构建核心 Agent Workflow:包含 LLM 对话、工具调用、SKILL 上下文管理等步骤
|
||||
- 提供 SKILL 目录扫描与注册 API,支持运行时动态加载/卸载 SKILL
|
||||
- 暂不支持 Shell/脚本执行类工具,保证纯 Python 运行环境安全
|
||||
|
||||
## Capabilities
|
||||
|
||||
### New Capabilities
|
||||
- `skill-loader`: SKILL.md 文件的解析、验证与加载,支持 YAML frontmatter + Markdown body 的标准格式
|
||||
- `agent-workflow`: 基于 LlamaIndex Workflow 的核心 Agent 实现,包含对话管理、工具调用、SKILL 上下文注入
|
||||
- `skill-registry`: SKILL 的注册、发现与生命周期管理,支持运行时动态增删
|
||||
|
||||
### Modified Capabilities
|
||||
|
||||
_无现有 capability 需要修改。_
|
||||
|
||||
## Impact
|
||||
|
||||
- **代码**: 在 `src/llama_agent_skills/` 下新增多个模块(skill loader、agent workflow、skill registry)
|
||||
- **依赖**: 新增 `llama-index-core`、`llama-index-llms-openai`(或其他 LLM provider)、`pyyaml`(用于解析 frontmatter)
|
||||
- **入口**: 改造 `__init__.py` 的 `main()` 函数,提供 Agent 启动入口
|
||||
- **配置**: 可能新增配置文件或环境变量支持(LLM API key、SKILL 目录路径等)
|
||||
- **限制**: 不引入 `subprocess`、`os.system` 等 Shell 调用,确保线上安全运行
|
||||
Reference in New Issue
Block a user