Send a Document
Select a template to fill out and send for signature.
NDA Status
Track signing progress for your NDAs.
| Date | Recipient | Template | Originator | Odys Signer | Additional CCs | Status | Actions |
|---|
NDA Archive
Search previously signed NDAs by name, counterparty, or keywords.
NDA Settings
Workspace-wide configuration for the NDA workflow. Shared across all admins.
Claude prompts
Each prompt-driven extraction in Eta is editable so it can improve over time without a redeploy. The JSON output schema is appended automatically and isn't user-editable.
The overall instructions Claude receives before the JSON schema — company context, date-formatting rules, general approach.
The per-field instruction Claude sees for each JSON key (counterparty, effective date, term, etc.). The keys themselves are fixed — only the descriptions are editable.
Out-of-sync NDAs
Each archived NDA records the hash of the prompt fragments + model used to extract it. When you change the intent prompt, any field description, or the extraction model, every previously-extracted row goes "out of sync" and should be re-processed against the new settings.
Run history
Test prompts
Pick a previously-processed NDA and re-run it through the current prompts. Compares the new result side-by-side against what's stored in the archive. Does not modify the archive.
Scan DocuSign Inboxes for received NDAs
DocuSign Connect only fires for envelopes that originated from the Odys account. NDAs sent to Odys folks live on the counterparty's account and only appear in the Odys signer's personal DocuSign Inbox. Pick which users' inboxes to walk and click Scan — same classify + archive pipeline as the standard scan.
| Name | DocuSign user ID | ||
|---|---|---|---|
| Loading… | |||
Scan DocuSign for missing NDAs
Master view of every DocuSign envelope Eta has classified. Each row is one envelope — re-scans update in place rather than stacking duplicates. Only envelopes whose DocuSign lifecycle status is completed are classified and (if NDAs) imported; non-completed envelopes are recorded as a row but skipped from classification work to keep Claude spend down on a 1500+ envelope corpus.
Document Sent
Envelope ID:
Recipients
Time Tracking
Your logged time, color-coded by project.
Projects
Projects tracked in Rippling under the "Projects" Job Dimension.
| Name | External ID | Rippling ID |
|---|
Workers
Rippling worker roster cached locally.
| Title | Department | Employment | Status | Actions |
|---|
Users × Projects
Who is assigned to which project. Read-only in this view; changes happen in Rippling.
Actions & ToDos
Extracted from your Gmail, Slack, and Granola notes. Nothing falls between the cracks.
| Assignee | Description | Status | Due | Recipient | Priority |
|---|
Activity
Recent changes across all your tasks and extraction runs.
User Settings
Your account, appearance, and (for admins) integrations + prompt configuration.
Account
Appearance
Theme preference travels with your account across devices.
Notifications
Choose how Eta reaches you for each notification type. In-app notifications are always on; Slack delivery is coming soon.
Integrations
Connect the sources Claude uses to find your action items. Per-user; your data stays yours.
Gov Opportunities
SBIR/STTR topics from DSIP and SBIR.gov, scored against the active capability list.
| Score | Title | Agency | Phase | Award | Opens | Closes | My status |
|---|
Capabilities
Curated list of Odys capabilities used to score opportunities. Edits don't trigger re-scoring — use Settings → Re-score all when you're ready.
Gov Opportunities Settings
Editable scoring prompt + manual ingest/scoring controls.
Claude scoring prompt
Editable intent — the JSON output schema is fixed in code and appended automatically. Changes invalidate the capabilities-hash for every scored row, so the next scoring run re-scores them under the new prompt.
Runs once per opportunity that passes keyword filter. Scores fit 1-10 and lists matched capability ids.
Email digest
After each scoring run, opportunities scored at or above this threshold are emailed once to every user with the gov_contracts permission. Each opportunity is emailed at most once.
Manual controls
DIU historical backfill walks the Wayback Machine archive for diu.mil — one-time op, ~10–30 minutes depending on snapshot count, recovers every closed AOI ever published. Safe to re-run; idempotent on (source, source_topic_id).
Recent jobs
Test scoring prompt
Pick an opportunity, re-run scoring with the currently-saved prompt, and see the result side-by-side with the stored score. Does not modify the stored value.
Asset Requests
Submit a request for marketing assets — decks, logos, renders, videos. Drag new requests into the kanban to triage; assignees pick them up and ship the deliverable as a Drive link.
| Title | Type | Priority | Submitter | Due | Submitted |
|---|
DAM Settings
Manage the asset-type taxonomy used in the request form.
| Slug | Label | Sort | Active |
|---|
CRM
Per-user contact graph extracted from Gmail, classified, and (later) scored.
| Contact (by Name) | Type | Founder | Raised | Interest | Conf | Company | Location | Msgs | Last |
|---|
Pending Review
Low-confidence, Unknown-typed, or flagged contacts — correct them here to feed the rule-learning loop.
| Contact (by Name) | Auto type | Correct type | Confidence | Signals | Reason & Apply |
|---|
Dedupe
Find and merge contacts that are the same person across multiple email addresses.
Candidate duplicates
Run a scan to find candidate duplicates.
Already merged
Contacts with two or more emails merged. Click a radio to make a different email the primary.
| Contact | Type | Emails (select primary) | # emails | msgs |
|---|---|---|---|---|
| Loading… | ||||
Scans
Each scan gathers Gmail messages matching the query, then auto-classifies the contacts extracted from From / To / Cc.
| Gmail query | Status | Progress | Contacts | Messages | Started |
|---|
Goals
Quarterly OKRs by org node and owner. Each owner gets up to 6 priority slots — 1 (top), 2A, 2B (second tier), 3A, 3B, 3C (third tier).
Machine Activity
NinjaOne and Tailscale device state, sampled every 5 minutes, plus imported Windows event-log history.
| Name | User | Status | Last seen | Public IP | Location | Local IPs | Sources |
|---|
Fleet
Share of polls each device was online (any source), per bucket. Click a name to open its timeline.
IT Tickets
Parent tickets for IT programs, a child ticket per computer: status, stage, steps, next steps, learnings, and the full thread (conversation, Slack, script runs, events). View-only for now; updates appear live.
Loading...
IT Agent Personas
The Odys IT Slack app posts as one of these personas on each ticket, picked at random from the enabled ones and kept for the ticket's life. Avatars are square images (cropped and resized to 512×512 automatically) that Slack shows next to each message.
Helpdesk personas
Loading...
IT Policies
Company-wide rules for every Odys laptop and workstation: what we decided, why, and how each one is enforced and checked on Windows, macOS and Linux. Draft, approve, then mark enforced once it is live across the fleet. Every change is logged in the policy's history.
Loading...
Software catalogue
What employees may install and how. Approved: anyone can have it. On request: ask in the Helpdesk, IT installs it. Blocked: removed where found (bloatware, unsafe or unsupported copies). The Software installation and Bloatware policies set the rules.
Loading...
Helpdesk
Tickets from the Odys IT Slack app. Each ticket has an AI agent persona working it with the employee; your replies and decisions are shown as yours, separate from the agent's work. Updates appear live.
Loading...
My IT tickets
IT tickets you are part of. To ask IT for help, send a direct message to the Odys IT app in Slack; the conversation continues in a private Slack channel for your ticket.
Loading...
Oracle threads
One conversation per ticket between you and Oracle. Helpdesk agents consult Oracle when they have no runbook; Oracle answers them, explores, or brings the decision here. Threads waiting on you come first.
Loading...
Pick a thread.
Oracle
The IT autopilot. It does low-risk work on its own (tier 0-1), does impactful work only after you approve it (tier 2) and prepares judgement calls for you to carry out yourself (tier 3). Shadow mode only records what it would have done.
Loading...
Sessions
One Claude Code session per ticket thread. Biggest context first, so you can watch growth and cost.
Loading...
Waiting for your approval
Loading...
Runs
Loading...
Helpdesk settings
What the IT agents may do on their own, topic tags, usage, and the pilot. Every change is logged below. Personas have their own tab.
Pilot & kill switch
Loading...
Approval settings
For each kind of action, when the agent can go ahead. After 3 approvals in a row with no comment, the agent asks a technician whether to relax that action.
Loading...
Script trust
Scripts on PCs: read-only operations run without asking. A change runs without asking only when the operation is proven (clean on 3+ PCs, no recent failure or flag, unchanged since) and the agent runs it inside a proven runbook step (done on 3+ PCs). Deleting and credential changes always ask. A code change to a script needs one approved run of the new version. Admins can promote or demote by hand.
Loading...
Repo-change settings
For each kind of change to the IT repo, when the agent can make it without a technician.
Loading...
Topic tags
Tickets can carry several topics. They are used for filtering and for usage reports.
Loading...
Usage & budgets
Claude usage by the IT agents. No limits are set yet.
Loading...
Change log
Loading...
Weekly usage
Hours each person is in use, by day of the week. In use = the computer's own 5-minute report says someone is active (not idle, locked or signed out); computers without the reporter count awake time, hatched as an estimate. Time goes to whoever is signed in, else the computer's daily user, else its owner for a personal computer: servers are left out, lab and test rigs and unclaimed shared PCs are listed separately, and a person's row is the union of their computers (no double counting). In office = Office, Hangars (both blocks) and Munich; flight test = Starlink; cloud / VPN addresses are unknown, never remote. Each computer's day runs midnight to midnight in its own time zone (Munich: Berlin, else Pacific). One week: click a day for the evidence behind it. Click a computer row to set its role or daily user.
Loading...
Map
Where each device was, from its public IP (Tailscale's endpoint when connected, else NinjaOne). Office and Hangars are exact (the sites' known addresses). Everywhere else IP location finds the internet provider's nearest hub, not the building: treat it as city-level at best. VPN and cloud addresses are labelled "real location unknown", mobile networks "approximate".
Stays
Runs of 5-minute polls at one public IP, newest first. Click a row to jump the map and slider to it.
Org & Users
Active Odys employees from Rippling, with Eta access status. Click a row to manage permissions, default signer, and template access.
| Name | Department | Manager | Type | Status | Start | ||
|---|---|---|---|---|---|---|---|
Settings
Approved Odys Signers
Manage who can be selected as the Odys Signer on envelopes.
Time Tracking — Rippling Sync
Manual sync of Rippling workers, projects, and assignments into the local cache.