June changelog

this week

Connections That Follow You and Reply in Thread

Connect a tool once in your personal space and June can use it in every organization you belong to; connect it inside an organization and it stays there. Conversations grew side threads, and attachments upload the moment you add them.

New

  • Personal connections follow you into your organizations, so you no longer reconnect a tool per organization
  • A connection made inside an organization stays there and is removed when you leave
  • Integrations: a “Used in” column shows where each connection reaches, and “Personal only” in a row’s menu keeps one out of your organizations
  • Organization admins set up an integration once, such as the mail server, and each member connects their own account to it
  • Google Search Console: ask June about clicks, impressions, index status and sitemaps of your sites, read-only
  • Reply in thread: open a side thread on any message; replies nest under their conversation in the sidebar, and settling a conversation settles its replies
  • June can start a separate thread for a side task and hand it a brief, linked back to the conversation it came from
  • Attachments upload as soon as you add them, with progress, Retry and Remove; images open in a gallery and text files preview inline, on web and mobile
  • An @mention in an organization chat that stays unread for a minute reaches the member’s phone
  • A Slack workspace can belong to an organization, so its threads become that organization’s chats

Improved

  • June starts on your message sooner: the wait before June starts answering went from several seconds to about one
  • Mailboxes start as personal only, so your mail stays out of your organizations until you say so
  • Archived projects move to an Archived shelf on the Projects page and leave the sidebar
  • A very long paste folds into a text attachment instead of filling the composer
  • A prompt that did not send stays in the thread with Edit, Retry and Discard
  • The composer shows Markdown as you type, recalls earlier prompts with the arrow keys, and says why Send is unavailable
  • Mobile: a Steer button while June is replying, an image viewer and file previews
  • Drag the edge of the desktop sidebar to resize it
  • ⌘⇧O asks where a new chat goes: pick Personal, a project or an organization, or press Enter to start where you are; the pen in the sidebar still starts one right away
  • Links in replies lead with their site’s icon
  • Built-in integrations you have not connected get a Connect row in the Integrations table, and June offers a connect link for an organization integration you have not connected

Fixed

  • Web search citations no longer show up as unresolved markers when June used other tools in the same reply
  • A sent prompt no longer comes back into the composer once June has received it
  • A long thread title shortens before the project and organization names in the top bar
  • In an organization chat, a message sent while June works runs as the member who sent it

Organizations, Microsoft 365 and Voice Calls

June now works for a team: create an organization, invite people, chat together and decide who pays. Mailboxes, Microsoft 365, Notion and Obsidian joined the integrations, and on the web you can talk to June in a call.

New

  • Organizations: create one, invite people by email or with an invite link, and let colleagues with your email domain join at sign-in
  • Organization chats: June answers when you tag @june, @mentioning a member adds them to the thread, and an organization’s projects share their chats and files with its members
  • Funding sources: an organization can pay for every turn in it with an API key or a member’s shared ChatGPT or Claude plan
  • Mailbox: connect Gmail or any IMAP mailbox, and June reads, searches and writes drafts in it
  • Microsoft 365: Outlook mail, calendar, Teams chats, and OneDrive and SharePoint files
  • Notion: June reads and writes the pages and databases you share with it
  • Obsidian: connect a vault kept in a GitHub repository, and June edits your notes in place and pushes them back, never force-pushing
  • GitHub: when a task needs your GitHub account and none is connected, June asks you to sign in in the middle of the run
  • Voice calls on the web: start a call in a thread and talk to June; the call runs on your ChatGPT plan when you have connected one
  • Use your June connections from Claude or Codex through June’s MCP server

Improved

  • A new sidebar with Pinned, Active, Drafts and Settled shelves, and a top bar with the thread’s place, rename and menu
  • Keyboard shortcuts: one ⌘K palette for search and commands, and ⌘/ lists every shortcut
  • Each project keeps its own lasting picture of the work, apart from yours, and the project page shows its memory
  • Each finished reply opens with how long June worked and one line on what it did; while it runs, the same line names the current step
  • A glass composer with slimmer pickers
  • The Integrations page lists every connection in one table you can sort by column, and Slack installs live there too
  • A project chip on sidebar rows and a project filter beside Search
  • Mobile: long-press a thread to pin, settle or share it, and June links open in the app
  • Slack: replies show as task cards you can steer while June works, and saved Slack connections name their workspace
  • In Slack channels and threads, June answers only when @-mentioned, and sends its connect links by direct message

Fixed

  • Steering while June is using a tool no longer cuts the step short or loses the tool’s result
  • A dropped attachment upload is retried, and a file that still fails is named
  • The sidebar shows when a thread last had activity instead of a date in 1970
  • Slack mentions show as names instead of raw user ids
  • Mobile: Markdown tables and code blocks follow dark mode

Projects and Honest Failures

Projects give a group of conversations their own instructions, memory and files. Underneath, failed turns stopped hiding: every failure now shows up as an error you can retry.

New

  • Projects: create a project with its own instructions and mounted files, then start chats inside it. Every chat in a project shares the same memory and sandbox, on web and mobile
  • Download button directly on PDF cards the assistant produced, next to Preview

Improved

  • PDF attachment cards redesigned as a single hairline row instead of a filled box
  • iOS loading rebuilt: Home and thread screens no longer spin indefinitely, and a stall shows one clear “Still loading — tap to retry” instead of a “Reconnecting…” caption

Fixed

  • Claude replies no longer come back empty: the reply budget was raised past the old 4,096-token cap that reasoning used to exhaust, and a reply that still hits the limit fails visibly with Retry instead of saving a blank turn
  • Failed runs show as errors with Retry after a reload or on a second device, instead of a plain “Please try again” bubble
  • Long tool-heavy turns no longer lose their tools after about five minutes when the sign-in token expires mid-turn

Documents, Images and Voice Input

June can now write real documents and publish them where you keep your files, generate images inline, and take dictation on your phone.

New

  • Documents: ask for a memo, report or letter and June compiles a PDF in your sandbox, attaches it to the chat, and a Preview button opens it in a side panel
  • Publish workspace files to Google Drive or an ownCloud/WebDAV server, and push to GitHub repositories, straight from the sandbox
  • New ownCloud connector on the integrations page
  • Image generation: June creates images inline on web, mobile and email through your ChatGPT subscription
  • Attach button in the web composer for files and photos, alongside drop and paste
  • On-device voice dictation in the mobile composer

Improved

  • Model picker opens instantly with the last known catalog while provider status refreshes in the background; it used to wait around five seconds
  • Mobile: swipeable thread rows with spring physics and press feedback, a searchable model settings sheet, a Stop button while June is replying, and a glass composer on iOS 26
  • The “memories in context” chip now stays on every reply, not just the live turn
  • Memory review is retired: facts June extracts are live immediately instead of waiting in a provisional tier

Fixed

  • The mobile app no longer floods push registration on launch, which was behind the chronic “Reconnecting…” and “Still loading” states when opening a thread
  • Your Personal Soul is no longer written as if you were named June, and no longer nests wrapper markup on each rewrite
  • The microphone shows by default on mobile; the voice-input flag is a kill switch rather than an opt-in

Faster First Byte, No Duplicate Replies

A week on the send path. New chats start streaming as soon as your message is accepted, and a retry after a timeout reattaches to the run that is already answering.

Improved

  • New chats return their stream immediately and do the turn setup inside it, so the first byte no longer arrives 10 to 20 seconds late and mobile stops hitting its connect deadline
  • Conversation title generation moved off the send path

Fixed

  • Retrying a send that timed out reattaches to the existing run instead of starting a second one and producing a duplicate reply
  • A sent prompt no longer reappears in the composer after a refresh
  • Pasting a very long text no longer fails the turn; memory recall reads the opening of the paste and never blocks the reply

Steadier Sign-in and Drafts

Fixes for the small betrayals: drafts erased in fresh chats, false reconnect prompts, and Server Errors on returning to an idle tab.

New

  • Claude models are discovered from Anthropic’s live catalog, so new releases show up in the picker without an update
  • Fresh chats open on their own URL and keep your draft; typing in a new chat is no longer erased when your session refreshes in the background

Improved

  • Connected ChatGPT and Claude credentials are refreshed proactively before they go stale

Fixed

  • No more false “reconnect your provider” prompts on transient errors; only definitive authentication failures ask you to reconnect
  • Returning to an idle tab no longer shows a Server Error; the app stays authenticated across token expiry
  • Opening a deep link without a session lands you on the page after sign-in instead of a JSON error
  • Settling a conversation stays available after work finishes, on web and mobile
  • ⌘K search: Enter reliably opens the selected conversation
  • Sidebar settle icon no longer ghosts over the run spinner; memory chips line up with the thought-process icon column
  • iOS: late session refreshes are kept instead of dropped, closing one path to unexpected logouts

Faster Dashboard, Calmer Mobile

The dashboard shell now streams immediately on a cold load, and the mobile app stops fighting its own connection.

Improved

  • Dashboard cold load: the redirect chain collapsed and the shell streams right away, so the composer is typable far sooner (it took about 3 seconds on a fast connection and 5 on 4G)
  • Chat sidebar navigation compressed, leaving more room for the thread list
  • Mobile: persisted light, dark and system appearance, steadier live-follow scrolling, and safer update restarts after long background sessions
  • Home thread rows collapsed to a single line
  • Mobile subscribes to run state only for threads that can still change, instead of one subscription per thread, cutting the reconnect replay storm

Fixed

  • Opening a thread after the app has been open a while no longer spins forever
  • When a connected ChatGPT or Claude session has expired, the composer says so and links to settings instead of failing silently; your draft is preserved

Conversation Search, Personal Soul and Lossless Steering

⌘K now searches what was actually said, June keeps a versioned profile of you, and sending a message mid-reply no longer throws away the reply so far.

New

  • ⌘K searches the full text of your conversations through a search index and ranks results by match quality
  • Personal Soul: a versioned profile June maintains about you, with full history and word-level diffs on the Memory page
  • Automatic settling window is configurable per user in Settings; zero means never
  • Mobile motion layer: spinner, boundary crossfades and press feedback on every control
  • Mobile chat surface: replies render on the canvas, your turns sit in a paper chip, with elevation tiers and a neutral palette

Improved

  • Sending a message while June is replying steers the run without losing the partial reply; the pre-steer output is kept in the transcript
  • Integration code runs no longer pop an approval card on every interactive turn

Fixed

  • Duplicate assistant messages after a refresh: the completed stream is now retired the moment the reply is committed
  • Mobile: duplicate sends, the socket-restart crash, the wedged streaming screen, and tool-only turns that rendered nothing
  • Connect X works again after three separate server bugs in the OAuth path
  • A second approval within one turn no longer fails with a mismatch error
  • “Thinking…” stays on screen until the reply renders something, with no blank beat
  • The composer blur no longer flashes when the input grows or shrinks

Dark Mode, LaTeX and Settled Conversations

The biggest week since the rebrand: dark mode everywhere, equations that render, and a way to put finished conversations to rest.

New

  • Full dark mode across the web app, docs and chrome, with a theme switch
  • LaTeX renders on web and mobile
  • Conversation settlement: settle or unsettle a conversation by hand, read conversations settle automatically after 72 hours, and settled threads move to their own section on web and mobile
  • Threads go unread when June finishes; right-click a sidebar row to mark it unread again
  • Assistant replies carry a footer with copy and a datestamp
  • Google Drive, personal email and Obsidian are available to June’s code mode as native plugins
  • Chat attachments are mounted into the sandbox on demand under /attachments
  • Reset: a five-step funnel for recovering from a setback, handing June a brief and seven daily accountability reminders
  • Mobile: resilient over-the-air updates with a manual check on Home, and older history loads as you scroll to the top

Improved

  • Spark skips the email code when you are already signed in, finishes its analysis in one pass, and its daily and 14-day follow-ups run on June’s normal schedule
  • June knows which connectors you have connected and mentions them when relevant
  • History messages carry timestamps so June knows when something was said
  • “Design an agent” opens on the work you want done instead of a nine-question form
  • Settle control moved into the composer footer, and the toast names the conversation it settled
  • Image attachments reserve their layout and no longer ship the original bytes, so threads stop jumping

Fixed

  • Completed streams no longer get stuck in a generating state
  • Messages keep their order while a reply streams
  • Mobile streams resume after switching apps, and a fresh thread no longer races its own first send
  • Sidebar activity reflects the actual run state, not a leftover stream marker
  • The integrations dashboard degrades gracefully when one source fails and streams its loading state
  • Composer notice overlap, blur clipping and top padding under long drafts
  • The conversation loading screen no longer flashes white in dark mode on mobile

Share Links, Usage Limits and Spark

Show a conversation to anyone with a link, check your ChatGPT and Claude quota before you sign up, and let Spark read what you save on X.

New

  • Public share links: share a chat read-only as a frozen snapshot or an auto-updating link, with attachment controls and per-message anchors
  • Limits: connect ChatGPT or Claude before creating an account and see your live quota windows on a timeline
  • Spark rebuilt on the June design system; it now analyzes your bookmarks and likes and runs on your connected ChatGPT subscription
  • X: bookmark and thread-context research, plus follower and post analytics tools

Fixed

  • Integrations dashboard restored and faster after a crash in the image font loader
  • Thread order is preserved when a stream resumes after a refresh
  • The final chunks of a streamed reply are no longer dropped
  • Binary attachment uploads work on mobile
  • Spark keeps the scan on screen instead of flashing it, and analysis progress survives interruptions

nicoolAI Becomes June

The product has a new name, a new home at dearjune.ai, and a new logo. Around the rename: a stop button, X as a connector, and a way in from X for new users.

New

  • nicoolAI is now June, at dearjune.ai, with a new logo and app icons; visitors arriving from nicool.ai see a short banner explaining the change
  • Stop button ends an active run immediately, on the server too
  • Open a new chat from a link: append ?q= and the message is sent as soon as you land
  • Connect X on the integrations page: read-only tools for profiles, posts, search, timelines and mentions
  • Spark: an X-first way to meet June, with an optional weekly Spark posted back into the same conversation
  • Support form in the dashboard for bug and feature reports, with screenshots
  • iOS Home Screen quick actions: new chat, continue last chat, report an issue
  • Schedule detail page rewritten to answer “did my reminder fire?” in one place; the schedules list stays live
  • Browser tabs show the conversation name
  • All integrations live under one page in the dashboard
  • Usage page redesigned around one headline figure and a trend chart
  • A “memories in context” chip above each reply shows which memories June read for it

Improved

  • A submitted prompt parks in a notice above the composer while uploads finish, so the composer clears immediately without the prompt disappearing
  • Memory saves durable facts only; task chatter no longer gets written down
  • GPT-5.6 Luna is the fallback model when your subscription is unavailable
  • Terms and Privacy links on the mobile sign-in screen

Fixed

  • MCP: granular OAuth errors, tool-discovery failures surfaced instead of a silent zero tools, OAuth opens as a real navigation, and “Connected” only shows when discovery succeeded
  • Sandbox idle timeout resets after each command instead of a fixed ten-minute deadline from boot
  • iOS build 32 crash on launch
  • A freshly started chat’s sidebar row stays highlighted

Set it, send it, get on with your day.

June is getting better at working in the background: reminders and recurring tasks are easier to manage, notifications bring you back when an answer is ready, and conversations hold onto more of your work.

  • Create a simple reminder just by asking. Reminders and recurring tasks now live together in one schedules view, where you can review and manage everything June is set to do later.
  • Get an “answer ready” notification on the web or your phone when longer work finishes, then tap it to jump straight back into the conversation.
  • Unsent messages are now saved in your browser, so you can move between conversations without losing a draft.
  • Drop files anywhere onto a chat to attach them. Larger uploads are more reliable across web and connected channels, with clearer progress while a file is being prepared.
  • Sources from web research now appear as clear, clickable citations inside answers.
  • Mobile conversations now load earlier messages and show more of your recent chats. Sign-in also survives app updates more reliably, and model selection is steadier while choices are loading.
  • Slack conversations can now use the relevant Google Drive links and files shared in the thread, giving June the context it needs without making you repeat yourself.
  • Chats feel faster and calmer, with quicker thread switching, immediate feedback while June starts thinking, cleaner spacing, and horizontally scrollable code blocks.

Keep talking. I’m listening.

Conversations feel more natural, memory is easier to understand, and your assistant has new ways to work with the information that matters to you.

  • Send another message while June is still working. Your follow-up joins the same conversation naturally instead of starting a separate reply.
  • Telegram conversations now stay in sync with June, including group chats, live replies, and messages sent by your automations.
  • When June remembers something new, you’ll see a small “memory saved” note beneath the conversation. The redesigned memory page also makes saved details easier to review.
  • New data workspaces give June a safe, organized place to work with lists, records, and other structured information on your behalf.
  • Explore the new skills catalog to see what your assistant can do and which capabilities are available to you.
  • The mobile app now makes full use of the iPad screen, while cleaner code blocks and a new glossary make chats and docs easier to read.

Channels, one conversation core.

The channel foundation is moving onto one canonical conversation model, with Chat SDK handling native platform transport while Convex remains the durable source of truth.

  • Chat SDK and the enabled Discord, Slack, and Telegram adapters moved together from 4.32 to 4.33; WhatsApp remains parked until its Cloud API setup is ready.
  • Channel work now targets native threads, typing, reactions, streaming edits, attachments, and automation replies without making transport state authoritative.

Choose your engine.

June can now run a conversation through either a ChatGPT or Claude subscription. The provider layer, model picker, and supporting runtime all learned how to keep that choice explicit, stable, and safe across web, mobile, and background work.

  • Connect Claude Pro or Max from settings, choose Claude models in web or mobile, and keep each conversation pinned to its original provider so its context never jumps engines mid-thread.
  • The Codex model list now comes from the live catalog instead of a hard-coded snapshot, with unavailable saved preferences cleaned up automatically.
  • Conversation pins landed on web and mobile, making important threads easier to keep at the top of the list.
  • A new command palette lets you search visible conversation threads and jump between them without leaving the keyboard.
  • MCP setup now detects and fills in server details automatically, while sanitizing discovered metadata before it reaches the form.
  • GitHub setup now reports the app's live status and gives clear feedback throughout the OAuth connection flow.
  • Shared-channel memory is now owned by the room rather than an individual participant, and private user-fact writes are suppressed in channel conversations.
  • Mobile sessions recover from transient token-refresh failures without signing you out, while sign-out and concurrent refreshes are fenced against races.
  • Runtime hardening covered expired attachment links, inbound-tool audience checks, MCP OAuth failures, Claude web search, and subscription-aware billing for auxiliary model calls.

Consolidation day.

The day after the sprint: fewer new toys, more load-bearing structure. Everything the agent executes now runs in one sandbox, and MCP servers went from plumbing to a user-facing feature.

  • One execution environment: the legacy bash runner is gone — every bash root now runs in the Vercel Sandbox.
  • Google Drive is materialized into the sandbox at /gdrive with per-caller authorization, so the agent works on your files like local ones.
  • Scheduled automations became Convex-triggered, Vercel-executed cron runs — same sandbox, same policy checks.
  • MCP servers went live in the product: a first-class /dashboard/mcp section, and connected servers now work on inbound channels (WhatsApp, Slack, email) too.
  • The pack install engine grew a reconciliation core — plan, apply, and export a tenant back to a pack — hardened through four review rounds.
  • Chat polish: a user dropdown in the sidebar footer with a real profile widget, and a duplicate-persistence fix.
one working day

The 127-commit day.

From 10:00 on July 7 to 01:47 the next morning, eight workstreams moved in parallel — two Claude subscriptions and one Codex subscription running agents against the same repo, with every change going through review before it landed. Here is what actually shipped, in more fidelity than a tweet allows.

01

The chat runtime moved onto Convex

convexstreamingauth

Every web chat turn now runs end to end as a Convex httpAction — streaming, tools, memory, file uploads, Google Drive mounts, and the sandbox bridge all execute next to the data instead of inside Next.js. After the two runtimes reached parity, the old path and its CHAT_RUNTIME feature flag were deleted.

  • Chat requests carry a JWT that Convex verifies itself — an invalid token is now a clean 401, not a 500.
  • Resumable streams survive refreshes without phantom replays, stop polling on cancellation, and garbage-collect their chunks after every turn.
  • Conversation titles, reasoning traces, and memory writes persist from the same action that streams the reply.
02

Sandbox v2 and a real policy layer

sandboxauthzbilling

The execution sandbox upgraded to @vercel/sandbox v2 with a native keep-alive lifecycle, and every piece of v1 workaround machinery was deleted. Underneath it landed a new policy core that decides what any given turn is allowed to do — and who pays for it.

  • Work units with deterministic keys and scope shares define what a turn may touch; revoked and expired shares filter out by default.
  • A single operationAuthz choke point now fronts every operation, with adapters per surface.
  • Inference funding is enforced per turn, so usage is always attributable to a plan that covers it.
  • Four review waves hardened lock races, expiry-bounded renewals, and snapshot-commit status checks.
03

Bring your own MCP servers

integrationsmcp

You can now connect your own MCP servers to your agent: an encrypted credential vault, OAuth flows for servers that need them, and a dashboard section to manage everything. A new run_integrations_code tool gives the agent code-mode over every server you connect — it writes small programs against your tools instead of calling them one at a time.

  • Secrets live in a per-user vault and never appear in the conversation.
  • Works across channels — the same connected servers serve web chat and inbound messages.
04

Native web search, code interpreter & image generation

toolsmobile

Web search migrated from a bolted-on tool to the provider's native one, and code interpreter plus image generation joined it. Charts and generated images render in web chat and are delivered through to the iPhone app.

05

Agent packs became buildable artifacts

packsnix

Professions ship as installable packs — soul, skills, and automation templates in one portable directory format. A serializer makes packs fully round-trippable, and a Nix realization layer turns every pack into a buildable flake, pinned toolchain included. The first production pack was reverse-engineered from the agent that runs this company: 50 skills and 11 automations, pushed back through the standard pipeline.

  • Core pack plus five profession packs authored against the new format.
  • Automations can ship real scripts (scriptPath) and pull custom packages via flake refs.
  • Import validation hardened across three review waves: slugs, versions, nix refs, manifest content, and cron edge cases.
06

Design-system groundwork

designin review

A forensic study of a reference-grade product UI — twelve reports and a construction bible — plus a dark-first token layer and full restyles of the landing, docs, chat, and UI primitives built on it. This one is still in review, which is why the page you're reading looks the way it does.

07

The mobile app grew up

iosandroidexpo

The iPhone app learned attachments end to end — attach from the library, paste an image, or share into the composer from any app — and Android arrived with build and Play-store delivery parity. The share sheet now asks whether you want a new thread or an existing one.

  • Composer polish: one-tap reasoning menu, send button on the input line, paste folded into the “+” menu.
  • ChatGPT quota usage is visible in the app, and the TestFlight pipeline was unblocked (Xcode 26 for SDK 56).
08

Chat & agent UX

webux

A reasoning-effort selector next to the model picker, the sidebar split by channel, ChatGPT quota usage surfaced in web and mobile, and a redesigned reasoning and tool-call display. Inference errors are now classified — when your quota runs out, the agent says so on every channel instead of failing silently.

Junegit log --since="07-07 10:00"127 commits
  • 01:4769133e8feat(mobile): iOS share-sheet target picker (New thread or existing)
  • 01:31056bc3bfeat(agent): classify inference errors + surface quota-exhausted to all channels
  • 00:42522d5dbfeat(tools): native code_interpreter + image_generation, mobile viz, image delivery
  • 00:26dd3ce6efeat(sandbox): v2-native keep-alive lifecycle, delete v1 machinery (S3)
  • 23:47fa3ee7cfeat(tools): migrate web search to native provider tool
  • 23:411541492feat(integrations): per-user MCP servers via embedded executor SDK
  • 22:473c94bf4feat(policy): inference funding enforcement (P3)
  • 21:3305e9d88feat(chat): add reasoning selector
  • 20:07f9db629redesign(tokens): dark-first polylane-mood token layer + fonts + theme wiring
  • 18:000744e68refactor(chat): drop CHAT_RUNTIME flag
  • 14:035259672feat(avatars): nix realization layer — every pack is a buildable flake
  • 10:58dedecfcfeat(mobile): attach, paste, and share files into the chat composer
  • … 115 more

Shipped means pushed and reviewed — a few of these are still rolling out behind flags or making their way through final review.

Groundwork weekend.

The quieter weekend that made the sprint possible: a walking skeleton of the new chat runtime, and a landing page that finally tells the truth about the product.

  • A Convex httpAction learned to run a full chat turn — streaming spike, resumable-stream store, then tools, memory, the bash bridge, Google Drive mounts, and file uploads, one commit at a time.
  • The landing page was repositioned around what June actually is — a virtual assistant — and rebuilt around the brand green with real product content instead of a generic task list.
  • The landing design became the single source of truth for theme tokens, so the dashboard and docs draw from the same palette.
  • Android support began its climb to iOS parity: builds, Play delivery, and shared composer code.

All of this works for you today.

Sign up in a minute and hand June the first thing on your plate.

Sign up free