
从 OpenLogi、claude-obsidian 和 vaultwarden 出发,分别练习设备控制、知识库事务与自托管服务的最小上手路径。
/data 目录。1v0.7.10 版本发布于 2026 年 8 月 23 日。项目 README 同时明确写着,OpenLogi 仍处在 active development 阶段,功能和配置可能继续变化。123openlogi-agent 分开:后台 agent 负责设备 I/O,GUI 负责展示和配置。这个边界比「一个桌面窗口调用几个 API」更适合练习进程间通信、权限和生命周期。/dev/hidraw*、/dev/uinput 和 Logitech 输入设备节点;这正好可以用来理解硬件程序为什么需要系统级权限。2brew install --cask openlogisudo dpkg -i openlogi_*.deb
systemctl --user enable --now openlogi-agent.service.zip 或 .msi;便携版里的 GUI 和 openlogi-agent.exe 需要放在一起。连接设备后,先观察电池状态、DPI 和 SmartShift,再只改一个按键或滚轮设置。2crates/ 开始,再定位到 crates/openlogi-hidpp。先回答三个问题:设备能力在哪里变成 Rust 类型,TOML 配置在哪里解析,agent 怎样把变化交给 GUI。这个顺序比从整个 GPUI 界面开始读更容易保留主线。2crates/openlogi-desktop/src/app/detail.rs 中。3v2.1.0 版本日期是 2026 年 7 月 31 日。这给本科生一个很具体的阅读入口:先看一次文件写入怎样被审阅,再看 AI 知识库怎样避免把自动生成的内容直接覆盖到用户目录。145git clone https://github.com/AgriciDaniel/claude-obsidian.git
cd claude-obsidianapproved_plan_sha256:export GENERATED_AT="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
export OPERATION_ID="init-reviewed"
python3 scripts/claude-obsidian.py init "$HOME/Documents/MyKnowledgeVault" \
--generated-at "$GENERATED_AT" \
--operation-id "$OPERATION_ID"python3 scripts/claude-obsidian.py init "$HOME/Documents/MyKnowledgeVault" \
--generated-at "$GENERATED_AT" \
--operation-id "$OPERATION_ID" \
--approved-plan-sha256 "你的 approved_plan_sha256" \
--applycd "$HOME/Documents/MyKnowledgeVault"
claude --plugin-dir /absolute/path/to/claude-obsidian/claude-obsidian:wiki 开始,再把一份资料放入 inbox/,调用 /claude-obsidian:wiki-ingest,最后用 /claude-obsidian:wiki-query 查询。4claude_obsidian/transaction.py,再看 skills/wiki 和 examples/sample-vault。你要追的对象是一次 operation bundle:它怎样记录目标文件的预期哈希,怎样在应用前检查变更,怎样在失败时恢复。451.37.2 版本发布于 2026 年 8 月 22 日。最新提交修复了新版本 web-vault 下的密码修改请求,改动落在账户 API 的密码处理逻辑中。对学习者来说,这是一条比「部署一个密码管理器」更窄的主线:客户端协议变化怎样传到服务端参数校验和密钥更新。167/data 负责保留持久数据。停止并重新创建容器时,数据卷仍然是你要检查的对象。127.0.0.1:8000,这个写法让实验服务先留在本机。docker pull vaultwarden/server:latest
docker run --detach --name vaultwarden \
--env DOMAIN="https://vw.domain.tld" \
--volume /vw-data/:/data/ \
--restart unless-stopped \
--publish 127.0.0.1:8000:80 \
vaultwarden/server:latest/vw-data/ 换成你专门为实验准备的空目录。容器启动后,先确认端口绑定和数据目录,再做一次停止、启动和数据检查。源码阅读从 README 的 Docker 用法进入,随后打开 src/、migrations/ 和 Dockerfile:先追一个账户 API 请求,再看它如何和数据库迁移接上。6127.0.0.1 改成全网监听,写下这一步把服务暴露范围扩大了什么;实验结束后恢复本机绑定并删除测试数据。| 你想练的主线 | 仓库与语言 | 最小条件 | 第一条可观察路径 | 主要限制 |
|---|---|---|---|---|
| 设备协议、桌面权限和 agent 分工 | OpenLogi · Rust | 兼容的 Logitech 设备;macOS 13+,或满足 README 要求的 Linux / Windows 环境 | 改一项 TOML 配置,观察 GUI、agent 和设备状态 | 项目仍在快速开发;Linux 包要求 GLIBC 2.35+。2 |
| 文件写入安全、知识图谱和证据链 | claude-obsidian · Python | Python 3.11+、Git、Claude Code 或兼容宿主;Windows 写入使用 WSL | 生成初始化计划,审阅哈希,再对独立 vault 应用 | 模型服务与可选工具需要自己配置;项目不替代备份。45 |
| 容器化服务、API 兼容和持久化 | vaultwarden · Rust | Docker;实验只用假数据和本机端口 | 启动容器,检查 /data,再停止并重启 | web-vault 需要 HTTPS 安全上下文;真实部署需要反向代理和备份。6 |
/data 和一笔 API 请求。这样读源码,仓库大小不会替你决定学习范围。github.com
github.com
github.com
github.com
github.com
github.com
github.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.