| name | PersonalDataHub |
| description | Pull personal data (emails, issues) and propose outbound actions (drafts, replies) through the PersonalDataHub access control gateway. Data is filtered, redacted, and shaped by the owner's policy before reaching the agent. |
| version | 0.1.0 |
| skillKey | personaldatahub |
| emoji | 🔐 |
| homepage | https://github.com/AISmithLab/PersonalDataHub |
| os | darwin, linux, win32 |
| install | cd ../../ && pnpm install && pnpm build && npx pdh init "OpenClaw Agent" && npx pdh start |
| metadata | {} |
| always | false |
PersonalDataHub
Access personal data from Gmail, GitHub, and other sources through the PersonalDataHub access control gateway. The data owner controls what the agent can see, which fields are visible, what gets redacted, and which actions are allowed.
Tools
personal_data_pull
Pull data from a source. Data is filtered and redacted according to the owner's access control policy.
Parameters:
source (required) — The data source (e.g., "gmail", "github")
purpose (required) — Why this data is needed (logged for audit)
type (optional) — Data type (e.g., "email", "issue")
query (optional) — Search query in source-native syntax (e.g., "is:unread from:alice")
limit (optional) — Maximum number of results
Example:
Pull my recent unread emails about the Q4 report.
personal_data_propose
Propose an outbound action (e.g., draft email). The action is staged for the data owner to review and approve — it does NOT execute until approved.
Parameters:
source (required) — The source service (e.g., "gmail")
action_type (required) — Action type (e.g., "draft_email", "send_email", "reply_email")
to (required) — Recipient email address
subject (required) — Email subject
body (required) — Email body
purpose (required) — Why this action is being proposed (logged for audit)
in_reply_to (optional) — Message ID for threading
Example:
Draft a reply to Alice's Q4 report email thanking her for the numbers.
Direct API Fallback
If the tools above are not available, you can call the PersonalDataHub API directly via HTTP.
Credentials: Read ~/.pdh/credentials.json to get hubUrl and apiKey.