Repository navigation
feat: gather owner profile from host memory, files and connectors - #201
Merged
Merged
Conversation
Adds an owner family (self/yourself/me alias to it) that interviews the agent's own user and writes a short always-on summary between Distilly markers into the host user file (Claude Code ~/.claude/CLAUDE.md, OpenClaw workspace USER.md). The full profile stays at ~/.distilly/owner/profile.md. It is context about the user, not a role-play Skill, so skill_writer refuses the owner family. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y32jGbUW3JKCyeeySUBm27
The owner intake now starts by checking what the host already knows (memory, existing user files, connected tools), then asks only for what is missing, and can read connected calendar, mail, docs, code or user exports read-only with the user's OK. Distilly never asks for keys or OAuth on this path. Profiles record a source per fact, and the summary limit is resolved per host. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y32jGbUW3JKCyeeySUBm27
9 tasks done
# Conflicts: # SKILL.md # prompts/owner/intake.md # prompts/owner/profile_builder.md # tests/test_owner_profile.py # tools/owner_profile.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Tianyi · project thread
Summary
Before: the owner flow from #197 learned about the user only from the interview and from material the user pasted in.
After: the flow first checks what the host already knows: its memory, existing user files (
CLAUDE.md, OpenClawUSER.md/MEMORY.md, HermesUSER.md) and the tools already connected to it. It then asks only about what is still missing. It can also read connected calendar, mail, docs and code, or exports the user provides. Each source is read-only, the user is asked before each one, and only a small, defined slice is read. Every fact in the profile records where it came from.Changes
prompts/owner/intake.md:prompts/owner/profile_builder.md:## Sourcestable with a fixed set of source labels, so facts can be reviewed and deleted one by one.tools/owner_profile.py: the summary limit is now resolved per host (HOST_SUMMARY_LIMITS,summary_limit()).--max-summary-charsdefaults to the host's limit, which leaves room for hosts with smaller budgets later (for example HermesUSER.mdat about 1,375 characters).SKILL.md: step 1 of the Owner Profile flow now describes the source order, in both languages.Motivation
Personal agents already hold the user's memory and connections. The owner profile should reuse them through the host instead of asking for credentials. The research is in the project thread linked above.
Testing
python -m unittest discover -s tests -p 'test_*.py'passed (93 tests, 3 new)python -m compileall tools/passednode bin/distilly.mjs --check-packagepassedChecklist
🤖 Generated with Claude Code
https://claude.ai/code/session_01Y32jGbUW3JKCyeeySUBm27
Generated by Claude Code