Claude 7d7af8f3e9
feat(coach): goals, habits, check-ins, daily briefs and check-in rhythm
The main agent should coach the user, but nothing stored what the user
wants to achieve or keep doing, and no routine ever checked in. This adds
the data model and the interfaces the onboarding intake and the coach
tools build on.

- Schema: UserGoal, Habit, CheckIn (one per habit, goal or day and date)
  and DailyBrief, all keyed to the user's local calendar date, plus a
  coachKey on Routine that marks the main bot's coach check-ins.
- Contracts (coach.ts): CoachRhythm, Goal, Habit, CheckIn, DailyBrief and
  CoachToday DTOs and the RPC inputs.
- Repository (@rakazo/db coach.ts): goal, habit and check-in CRUD with
  per-user limits, upsertDailyBrief and loadCoachToday with streaks in
  the user's time zone.
- coach-rhythm.ts: setCoachRhythm/getCoachRhythm keep up to three main
  bot routines (morning brief, evening check-in, weekly review) in the
  main conversation in step with the user's chosen times.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u
2026-10-03 13:12:08 +00:00

130 lines
5.0 KiB
TypeScript

export * from "./agent-connections.js";
export * from "./agent-environment.js";
export * from "./ai-consent.js";
export * from "./artifacts.js";
export * from "./auto-review.js";
export * from "./background-job-handlers.js";
export * from "./bot-messages.js";
export * from "./box-emulator.js";
export * from "./box-sandbox.js";
export * from "./browser-emulator.js";
export * from "./browser-provider-factory.js";
export * from "./browser-tools.js";
export { BUILTIN_MEMORY_PROVIDER_ID, BuiltinMemoryProvider } from "./builtin-memory-provider.js";
export * from "./builtin-skills.js";
export * from "./builtin-tools.js";
export * from "./cartesia-voice.js";
export * from "./chat-sdk-surface.js";
export * from "./child-bots.js";
export * from "./cloud-agent-emulator.js";
export * from "./cloud-agent-factory.js";
export * from "./cloud-agent-poll.js";
export * from "./cloud-agent-provider-env.js";
export * from "./cloud-agent-service.js";
export * from "./cloud-agent-tools.js";
export * from "./cloud-agent-tools-select.js";
export * from "./coach-rhythm.js";
export * from "./composio-catalog-cache.js";
export * from "./composio-connector.js";
export * from "./composio-emulator.js";
export * from "./computer-browser.js";
export * from "./computer-control.js";
export * from "./computer-idle.js";
export * from "./computer-lifecycle.js";
export * from "./computer-screens.js";
export * from "./computer-support.js";
export * from "./computer-tools.js";
export * from "./computer-update.js";
export * from "./computer-workspace.js";
export * from "./current-time.js";
export * from "./cursor-cloud-agent.js";
export * from "./daytona-emulator.js";
export * from "./daytona-sandbox.js";
export * from "./delegated-tasks.js";
export * from "./deployment-model.js";
export * from "./desktop-sandbox.js";
export * from "./destination-emulator.js";
export * from "./docker-sandbox.js";
export * from "./e2b-emulator.js";
export * from "./e2b-sandbox.js";
export * from "./elevenlabs-voice.js";
export * from "./email-emulator.js";
export * from "./embedding-emulator.js";
export * from "./executor.js";
export * from "./executor-attachments.js";
export * from "./executor-checkpoint.js";
export * from "./executor-completion.js";
export * from "./executor-computer.js";
export * from "./executor-effects.js";
export * from "./executor-model.js";
export * from "./expo-push.js";
export * from "./fake-browser.js";
export * from "./fake-sandbox.js";
export * from "./fake-web.js";
export * from "./fish-audio-voice.js";
export * from "./github-webhook-emulator.js";
export * from "./graphql-connectors.js";
export * from "./group-handoff.js";
export * from "./home.js";
export * from "./host-aware-sandbox.js";
export * from "./installed-connectors.js";
export * from "./integration-provider-settings.js";
export * from "./job-reconciler.js";
export * from "./keyless-http-web.js";
export * from "./kokoro-voice.js";
export * from "./mcp-connector.js";
export * from "./mcp-emulator.js";
export * from "./mcp-oauth.js";
export * from "./mcp-server-tool.js";
export * from "./mcp-transport.js";
export * from "./memory-provider-factory.js";
export * from "./messaging-context.js";
export * from "./messaging-delivery.js";
export * from "./messaging-platforms.js";
export * from "./messaging-team-chat-emulator.js";
export * from "./model-connect.js";
export * from "./model-selection.js";
export * from "./model-vision.js";
export * from "./none-sandbox.js";
export * from "./openai-compatible-embeddings.js";
export * from "./openai-compatible-url.js";
export * from "./openai-voice.js";
export * from "./page-browser-session.js";
export * from "./pi-credentials.js";
export * from "./pi-model-config.js";
export * from "./pi-models.js";
export * from "./pi-oauth.js";
export * from "./pi-openai-compatible-provider.js";
export * from "./pi-runtime.js";
export * from "./pi-session.js";
export * from "./pipedream-connector.js";
export * from "./profile-consolidation.js";
export * from "./project-workspace-files.js";
export * from "./project-workspace-path.js";
export * from "./realtime.js";
export * from "./release-watch.js";
export * from "./remote-mcp.js";
export * from "./run-secret.js";
export * from "./sandbox-factory.js";
export * from "./sandbox-provider-env.js";
export * from "./schedule-tools.js";
export * from "./scratchpad-context.js";
export * from "./scratchpad-tools.js";
export * from "./scripted-runtime.js";
export * from "./scripted-voice.js";
export * from "./secrets.js";
export * from "./sendblue-emulator.js";
export { SerenityMemoryProvider } from "./serenity-memory-provider.js";
export * from "./skill-tools.js";
export * from "./smtp-email.js";
export { SupermemoryMemoryProvider } from "./supermemory-memory-provider.js";
export * from "./teaching-session.js";
export * from "./team-chat-messaging.js";
export * from "./third-party-connector-emulator.js";
export * from "./voice-factory.js";
export * from "./wakeup.js";
export * from "./web-limits.js";
export * from "./web-provider-factory.js";
export * from "./web-ssrf.js";
export * from "./web-tools.js";