feat(examples): add personal-agent example; move Revolut out of built-in connectors#1168
feat(examples): add personal-agent example; move Revolut out of built-in connectors#1168buremba wants to merge 2 commits into
Conversation
…-in connectors Relocates the Revolut transactions connector from the built-in connector set into a new project-local example, `examples/personal-agent/`, and reflects the real `buremba` org there (org slug, all six entity types: person, company, asset, subscription, topic, trip). - examples/personal-agent/revolut-transactions.connector.ts: the connector, ported verbatim (CDP browserNetworkSync capture, /api/retail/.../transactions pagination via to=<ms>, checkpoint). Imports browserNetworkSync from @lobu/connector-sdk + a local copy of browser-scraper-utils.ts. - examples/personal-agent/lobu.config.ts: org "buremba", the six entity types, connector wired via connectorFromFile. - Removes packages/connectors/src/revolut.ts + its server unit test, drops the index re-export, and regenerates the landing connector catalog (27 -> 26). Revolut is no longer a built-in connector; it lives with the personal-agent project. E2E (lobu apply + browser-auth + sync) is a follow-up.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughAdds a personal-agent example (docs, browser scraper utilities, Lobu config with six entity schemas, package/tsconfig, and example connector) and removes the shared Revolut connector from core exports while updating connector icon slugs. ChangesPersonal Agent Example
Core Package Updates
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
examples/personal-agent/browser-scraper-utils.ts (1)
133-134: 💤 Low valueComment inaccuracy: link-local range description is misleading.
The comment states "fe80:..fec0:" but
fe80::/10only coversfe80::throughfebf::. Thefec0::/10range was the deprecated site-local prefix, not link-local. The regex itself is correct forfe80::/10.📝 Suggested comment fix
- // Link-local fe80::/10 covers fe80:..fec0: (first byte 1111 1110 1x). + // Link-local fe80::/10 covers fe80::..febf:: (first 10 bits: 1111 1110 10).🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@examples/personal-agent/browser-scraper-utils.ts` around lines 133 - 134, The comment for the linkLocalPrefix regex is inaccurate; update the comment near the const linkLocalPrefix = /^fe[89ab][0-9a-f]?:/ to state that fe80::/10 covers addresses from fe80:: through febf:: (not fec0::) and remove the mention of the deprecated site-local fec0 range, so the comment accurately describes the fe80::/10 link-local range while leaving the regex unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@examples/personal-agent/browser-scraper-utils.ts`:
- Around line 133-134: The comment for the linkLocalPrefix regex is inaccurate;
update the comment near the const linkLocalPrefix = /^fe[89ab][0-9a-f]?:/ to
state that fe80::/10 covers addresses from fe80:: through febf:: (not fec0::)
and remove the mention of the deprecated site-local fec0 range, so the comment
accurately describes the fe80::/10 link-local range while leaving the regex
unchanged.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 57486005-6623-483d-b5be-e3841796c0fd
⛔ Files ignored due to path filters (1)
packages/landing/src/generated/connectors.jsonis excluded by!**/generated/**
📒 Files selected for processing (11)
examples/personal-agent/IDENTITY.mdexamples/personal-agent/SOUL.mdexamples/personal-agent/USER.mdexamples/personal-agent/browser-scraper-utils.tsexamples/personal-agent/lobu.config.tsexamples/personal-agent/package.jsonexamples/personal-agent/revolut-transactions.connector.tsexamples/personal-agent/tsconfig.jsonpackages/connectors/src/index.tspackages/landing/scripts/gen-connectors.tspackages/server/src/__tests__/unit/connectors/revolut.test.ts
💤 Files with no reviewable changes (3)
- packages/server/src/tests/unit/connectors/revolut.test.ts
- packages/connectors/src/index.ts
- packages/landing/scripts/gen-connectors.ts
…ic key, pin Revolut connection to the Mac device worker - defineAgent: remove the hardcoded claude/ANTHROPIC_API_KEY provider; the agent inherits the org default and runs on the local/Mac-app device worker. - Declare the Revolut auth-profile (browser_session) + connection pinned to the device (deviceWorkerId), with max_scrolls=100 for full-history backfill. - Entity schemas now exact-match live buremba (apply = noop, 0 update).
What
Relocates the Revolut transactions connector out of the built-in connector set into a new project-local example
examples/personal-agent/, which mirrors the realburembaorg.Why
Revolut shouldn't be a built-in connector — it belongs with the personal-agent project that uses it. This makes it a project-local
*.connector.ts(compiled bylobu apply), keeping the built-in set focused.Changes
examples/personal-agent/:revolut-transactions.connector.ts— the connector ported verbatim (CDPbrowserNetworkSynccapture,/api/retail/.../transactionspagination viato=<ms>, checkpoint). ImportsbrowserNetworkSyncfrom@lobu/connector-sdk+ a local copy ofbrowser-scraper-utils.ts(the SDK doesn't export those helpers).lobu.config.ts—org: "buremba", all six buremba entity types reflected exactly (person, company, asset, subscription, topic, trip), connector wired viaconnectorFromFile.IDENTITY.md/SOUL.md/USER.md/package.json(^9.3.0, matching sibling examples) /tsconfig.json.packages/connectors/src/revolut.ts+ its server unit test; dropped theindex.tsre-export; regenerated the landing connector catalog (27 → 26, revolut dropped).Validation
examples/personal-agentbunx tsc --noEmit→ exit 0; entity schema cross-checked field-by-field against the live buremba schema.packages/connectors— zero new regressions, no danglingrevolutreferences.E2E (
lobu applyagainst buremba +browser-auth+ a sync run) is a follow-up; that's also the Revolut data re-capture path, now self-contained in this project.Need help on this PR? Tag
@codesmithwith what you need. Autofix is disabled.Summary by CodeRabbit
New Features
Chores