mcpField
P
private-context-bootstrap

private-context-bootstrap

github.com/arthurzakirov安全0156 次安装5 周前更新
代码仓库

关于 private-context-bootstrap

这项引导技能帮助 Agent 在多台设备间使用私有用户数据,同时避免将数据写入公开技能、提示词、日志或仓库。它规定了定位、同步、解密和验证文件的步骤。

主要功能

  1. 01公开流程与私有数据分离
  2. 02定位并同步远程数据
  3. 03解密加密文件
  4. 04验证架构与文档路径
  5. 05工作流启动前检查就绪状态

适用场景

  1. 01在新设备上配置私有上下文
  2. 02为 Agent 工作流准备个人数据
  3. 03核验申请流程所需文件
  4. 04避免私有信息进入公开仓库

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/arthurzakirov/opportunityos --skill private-context-bootstrap

安装后在 Claude Code 中输入/private-context-bootstrap确认已加载。

详细介绍

私有上下文引导

用途

当 Agent 需要跨机器使用私有用户数据,但这些数据不能硬编码到公开技能、提示词、日志或代码仓库中时,请使用此技能。

此技能定义了如何从远程存储定位、克隆、解密、验证并载入私有本地文件。

核心原则

技能是公开的流程定义。私有数据存放在公开技能文件夹之外。

架构

使用三层结构:

  1. 公开技能仓库:通用技能、架构、虚假示例、脚本和文档。不包含真实个人信息。
  2. 私有远程数据仓库:私有 YAML、JSONL 日志、文档清单、标准,以及可选的 PDF。优先采用文件级加密。
  3. 密钥管理器:引导密钥和加密密钥。

推荐默认方案:

  • 使用私有 Git 仓库管理有版本控制的私有数据。
  • 使用 age + sops 加密 YAML/JSON 文件。
  • 如果在 Git 中存储 PDF,则使用 Git LFS 或加密归档。
  • Bitwarden Secrets Manager 存储私有仓库 URL(如有需要)、age 私钥、可选访问令牌,以及可选引导环境变量。

不要仅依赖未跟踪的本地文件作为唯一事实来源。

环境变量

支持以下变量:

SELF_SOURCE_REMOTE=""
SELF_SOURCE_HOME="$HOME/.config/self-source"
SELF_SOURCE_REPO="$HOME/.local/share/self-source/repo"
AGENTDESK_PROFILE_PATH="$SELF_SOURCE_HOME/job-applications/application-profile.yaml"
AGENTDESK_DOCUMENT_MANIFEST_PATH="$SELF_SOURCE_HOME/job-applications/document-manifest.yaml"
AGENTDESK_FIELD_POLICY_PATH="$SELF_SOURCE_HOME/job-applications/field-answer-policy.yaml"
AGENTDESK_APPLICATION_LOG_PATH="$SELF_SOURCE_HOME/job-applications/application-log.jsonl"

如果未设置这些变量,则使用上述默认值。

引导工作流

在新机器上:

  1. 检查 SELF_SOURCE_HOME 是否存在。
  2. 检查必需的私有文件是否存在。
  3. 如果缺少文件,则从 SELF_SOURCE_REMOTE、已配置的密钥管理器或用户处查找远程源。
  4. 将私有远程源克隆或同步到 SELF_SOURCE_REPO。
  5. 如果文件已加密,则将其解密到 SELF_SOURCE_HOME。
  6. 如果 PDF 存储在远程位置,则下载或同步这些文件。
  7. 根据架构验证所有必需文件。
  8. 确认引用的文档存在。
  9. 验证通过前,拒绝运行工作流。

如果可用,请使用 OpportunityOS 仓库中的 scripts/bootstrap-private-context.sh。它会协调克隆/同步、载入、验证和就绪状态报告。

严禁

  • 切勿将解密后的私有文件提交到公开仓库。
  • 除非用户明确要求,否则切勿在终端日志中输出完整的私人资料。
  • 切勿将密钥、个人数据或私有 PDF 粘贴到公开文件中。
  • 切勿假定新机器上已有这些文件。
  • 切勿捏造缺失的私人信息。
  • 切勿在不创建备份的情况下静默覆盖私有数据。

预期的本地目录结构

引导完成后:

$SELF_SOURCE_HOME/
  shared/
    personal-profile.yaml
  job-applications/
    application-profile.yaml
    document-manifest.yaml
    field-answer-policy.yaml
    application-log.jsonl
    documents/
      resume.pdf
      degree.pdf
      transcript.pdf
      references.pdf
      supporting-bundle.pdf

shared/personal-profile.yaml 必须符合 bitwarden-personal-profile 架构。各领域文件夹应引用此文件,而不是重复存储身份、联系方式、地址、就业、住房或通用表单信息。

文件名可以不同。Agent 必须使用引用和清单,而不是硬编码文件名。

必需检查

在任何工作流使用私有数据前:

  1. 确认资料文件存在。
  2. 确认共享个人资料存在,且符合 Bitwarden 个人资料结构。
  3. 确认文档清单存在。
  4. 确认字段策略存在。
  5. 如有需要,确认引用的文档路径存在。
  6. 验证架构。
  7. 清楚报告缺失的文件。

输出

返回私有主目录路径、私有仓库路径、资料文件状态、文档清单状态、字段策略状态、文档可用性摘要、验证错误,以及下一步手动操作。

评论

支持 Markdown