{"id":50792648,"url":"https://github.com/kychee-com/eleanor4devs","last_synced_at":"2026-06-12T12:01:53.155Z","repository":{"id":359279823,"uuid":"1245041344","full_name":"kychee-com/eleanor4devs","owner":"kychee-com","description":"Public npm packages for eleanor4devs — provider-contract, sdk, mcp, cli. Voice-first developer assistant orchestrating Claude Code and Codex sessions.","archived":false,"fork":false,"pushed_at":"2026-06-11T07:25:41.000Z","size":262,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-11T09:14:28.155Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://eleanor4devs.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kychee-com.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-20T21:13:26.000Z","updated_at":"2026-06-11T07:25:45.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/kychee-com/eleanor4devs","commit_stats":null,"previous_names":["kychee-com/eleanor4devs"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/kychee-com/eleanor4devs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kychee-com%2Feleanor4devs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kychee-com%2Feleanor4devs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kychee-com%2Feleanor4devs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kychee-com%2Feleanor4devs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kychee-com","download_url":"https://codeload.github.com/kychee-com/eleanor4devs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kychee-com%2Feleanor4devs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34243053,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-12T02:00:06.859Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-12T12:01:10.572Z","updated_at":"2026-06-12T12:01:52.435Z","avatar_url":"https://github.com/kychee-com.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eleanor4devs — public packages\n\nPublic npm packages for [eleanor4devs](https://eleanor4devs.com), a voice-first developer assistant that orchestrates Claude Code and Codex sessions.\n\nThis repo holds the source for the 4 `@eleanor4devs/*` packages on npm:\n\n| Package | npm | Description |\n|---|---|---|\n| [`@eleanor4devs/provider-contract`](https://www.npmjs.com/package/@eleanor4devs/provider-contract) | [![npm](https://img.shields.io/npm/v/@eleanor4devs/provider-contract.svg)](https://www.npmjs.com/package/@eleanor4devs/provider-contract) | Common Provider Contract — shared TypeScript types for Eleanor's Provider Boxes (Claude Local, Codex Local). |\n| [`@eleanor4devs/sdk`](https://www.npmjs.com/package/@eleanor4devs/sdk) | [![npm](https://img.shields.io/npm/v/@eleanor4devs/sdk.svg)](https://www.npmjs.com/package/@eleanor4devs/sdk) | Canonical TypeScript SDK — typed entry points for MCP verbs, thread orchestration, status, auth. |\n| [`@eleanor4devs/mcp`](https://www.npmjs.com/package/@eleanor4devs/mcp) | [![npm](https://img.shields.io/npm/v/@eleanor4devs/mcp.svg)](https://www.npmjs.com/package/@eleanor4devs/mcp) | MCP server — single declarative verb `report({event, ...})`. Strict credential isolation. |\n| [`@eleanor4devs/cli`](https://www.npmjs.com/package/@eleanor4devs/cli) | [![npm](https://img.shields.io/npm/v/@eleanor4devs/cli.svg)](https://www.npmjs.com/package/@eleanor4devs/cli) | CLI — `eleanor4devs install`, skill packs, Telegram auth, status. |\n\n## Install\n\n```bash\nnpm install -g @eleanor4devs/cli\neleanor4devs install\n```\n\nThen visit the Telegram bot at [`@eleanor4devs_bot`](https://t.me/eleanor4devs_bot).\n\nFull install instructions: https://eleanor4devs.com/install/\n\n## Repository structure\n\n```\npackages/\n├── provider-contract/   Shared TypeScript types (the 8-verb common contract).\n├── sdk/                 Canonical TypeScript SDK consumed by 3rd-party code + this repo's other packages.\n├── mcp/                 Single-verb MCP server for Claude Code / Codex.\n└── cli/                 `eleanor4devs` CLI — install + auth + status.\n\n.github/workflows/\n└── publish-all.yml      Trusted Publisher OIDC publish pipeline.\n```\n\nThis is a monorepo using npm workspaces. All 4 packages release lockstep at the same version via the `publish-all.yml` workflow.\n\n## Validation profiles (test tiers)\n\nTests follow the product's three-profile partition (spec AC-145):\n\n- **Core** — offline: `ELEANOR4DEVS_SKIP_LIVE_NPM=1 npm test`. Every live-network regression test self-gates on that env var (pinned monorepo-wide by `packages/sdk/test/core_profile_offline.test.ts`), so the gated run passes with no network access (AC-102).\n- **Extension** — real network against the npm registry and the deployed surfaces: `npm test` (the default — includes the live tests).\n- **Real Integration** — real vendor APIs; exercised by the private repo's backend suite and the Red Team's `/systemtest` cycles against the deployed product, not from this repo.\n\n## Release process\n\nAll releases go through the GitHub Actions `publish-all.yml` workflow using npm's Trusted Publisher OIDC federation — **no stored npm tokens**. Each published version has cryptographic provenance attestation linking the binary to the GitHub Actions run that produced it. Verify any release via:\n\n```bash\nnpm audit signatures @eleanor4devs/\u003cpackage\u003e\n```\n\nOr via the published shasum + the workflow's GitHub Release attachment.\n\n## Privacy \u0026 Security\n\nSee https://eleanor4devs.com/privacy/. Short version:\n\n- The MCP server exposes **exactly one verb** (`report`). No file I/O, no shell exec, no arbitrary network egress.\n- Local audit log at `~/.eleanor4devs/audit.log` records every call's hashed digest. Raw payloads stay local.\n- Only **hashed payload digests** + session metadata leave the user's machine, not raw `report` contents.\n- Sign out a CLI install (revokes its backend token, then deletes the local credential) with `eleanor4devs logout`.\n- Remove eleanor4devs entirely with `eleanor4devs uninstall` — it sweeps every local artifact (hooks, MCP entry, slash commands, skill packs, `~/.eleanor4devs`), best-effort disables your opted-in sessions and revokes the credential when linked, and finishes by printing the one remaining step: `npm uninstall -g @eleanor4devs/cli`.\n\n## Reporting issues\n\nOpen an issue: https://github.com/kychee-com/eleanor4devs/issues\n\nFor security disclosures, please email volinskey@gmail.com instead of opening a public issue.\n\n## License\n\nUNLICENSED — code shipped publicly for consumer access only. Contact for licensing terms.\n\nInternal product spec, plan documents, backend implementation, and infrastructure code live in a separate private repository.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkychee-com%2Feleanor4devs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkychee-com%2Feleanor4devs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkychee-com%2Feleanor4devs/lists"}