FalconEye FalconEye Admin

Sign in with your admin account to manage programs.

or
FalconEye Admin
Program Management
← FalconEye

Customizing

Drag Daily Brief cards or sidebar tabs to reorder them. puts one away; hidden items stay on screen as ghosts while you are here, so nothing is a one-way door.
Brief columns Card size 100% Sidebar

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Auto-scheduling needs a Buffer account

Approving a draft always marks it approved. It only posts automatically once BUFFER_ACCESS_TOKEN and BUFFER_PROFILE_IDS secrets are set — until then, approved posts show a Copy button for manual posting.

Generate Drafts

Generate Drafts

Describe what to promote — a feature ship, a rankings update, a blog post

Loading…
Coach Outreach

Coach Outreach

Recruiting-style program-by-program email — head coach to, rest of staff cc'd. Sends via Resend, respects the weekly touch budget.

Loading…
Recommended targets today Loading…
Loading…
Level
Send History

Send History

Every Coach Outreach email actually sent — school, recipients, subject, and when

Loading…
Gmail Inbox

Gmail Inbox

Mail sent directly to chris@falconeyefaceoff.com (read-only)

Loading…
Drafted Replies

Drafted Replies

Auto-classified & drafted from FAQ content — approve to send, or escalate manually

Loading…
Trials & Onboarding

Trials & Onboarding

Every trial's stage progress — who is moving, who has stopped, and what they haven't done yet

Loading…
Lead Follow-Ups

Lead Follow-Ups

Proposal / demo requests — personalized follow-up drafted within the hour

Loading…
Contracts

Subscription Agreements

Fills the placeholder fields in the Subscription Agreement and emails it to a coach — nothing sends until you click Send. Template is still under legal review; swap functions/templates/subscription-agreement.docx once it's final.

Pilot & pricing
Add-ons
No add-ons — the agreement will list the tier fee only.
Your side of the signature block (name, signature, title, date) is filled in automatically as Chris O'Connor, Founder. The coach's four signature lines are the only thing left highlighted, so it's obvious where they sign. Sending holds platform access for the program until you record the signed copy under Sent Agreements.
Sent Contracts

Sent Agreements

Log of every contract emailed from this panel

Loading…

Flags only — this never sends anything

A paying program going quiet longer than expected for the current point in the lacrosse season gets flagged here as worth a personal check-in call. Deliberately conservative threshold — see functions/churn.js for the season-baseline logic.

Flagged Programs

Flagged Programs

Going quiet — unusual for this point in the season

Loading…

Approval-first — never contacts a customer or changes an account

Reads existing tenant status, roles, login, and usage evidence and produces a Program Health Report per program. Recommendations only — see functions/customerSuccess.js and the design record's approval-first rule.

Coach's Manual

Coach's Manual

The same interactive manual coaches open from the Support Center

Program Health

Program Health Reports

Sorted worst health first

Loading…

Approval-first — never publishes documentation

Tracks the canonical documentation registry (functions/docRegistry.js) against the live Support Center and prepares Documentation Approval Packets for a flagged product change. Nothing here edits support.html automatically — see functions/documentationManagement.js.

Documentation Health

Documentation Health Dashboard

Coverage, gaps, and current version

Loading…
Approval Packets

Documentation Approval Packets

Pending founder decision

Loading…

Only drafts in December/January

Timed to just before preseason, not at random — see functions/reactivation.js. Trial-expired and cancelled accounts only; respects the weekly touch budget.

Reactivation Drafts

Reactivation Drafts

Lapsed/expired programs — preseason nudge awaiting approval

Loading…

Upgrade signals, strongest first

Locked-feature clicks and mid-workflow limit blocks (direct expressed intent) outrank scout/player headcount, film storage, and weekly AI spend. Headcount and storage need a cap set on the program — maxScouts, maxPlayers, storageLimitGb on tenants/{id} — and storage also needs a Storage Report run in System & Ops. Seasons of program history is deliberately not a signal. See functions/upsellReferral.js and functions/planLimits.js.

Paywall Pressure

Plan-limit pressure

Who is hitting a wall, how often, and on what — last 30 days

Loading…
Loading…
Upsell Flags

Upsell Flags

Pressing against a plan limit — send an upgrade suggestion

Loading…
Testimonial Targets

Best customers to ask

Ranked by real usage — deficiencies resolved, plans completed, session streaks, and coach report volume

Loading…
Loading…
Referral Drafts

Referral Drafts

Auto-drafted after a testimonial is marked received, or trigger manually

Loading…

Feeds the blog agent — not a separate report to read

Weekly competitor/trend digest's topic ideas get pulled automatically into the next blog draft. Shown here so you can see what it found; nothing to approve.

Weekly Digest

Weekly Digest

Competitor moves + lacrosse coaching/faceoff trends

Loading…

What is actually happening across every program

Sessions, breakdowns, deficiencies and plans, aggregated over all tenants. Claude and Gemini calls are reported separately on purpose: the Claude path was dead for six months while video breakdowns kept working, and one merged number would have hidden it.

Platform Analytics

Platform Analytics

Cross-tenant product activity

Loading…
User Activity

User Activity

Who signed in, and when — every program, most recent first

Visitors per day
Loading…
Who signed in
Loading…

Every agent FalconEye runs, and whether it is working

Health is computed fresh each time you open this tab — never stored — so an agent that has quietly stopped cannot keep reporting that it is fine. Anything needing attention explains why, what it affects, and what to do about it.

Agent Registry

Agent Registry

Contracts, health, and lifecycle for every production agent

Loading…

The coaching knowledge base — what exists, what's missing, and whether it's getting smarter

Every coaching answer Ask FalconEye gives comes from entries reviewed here — never the open internet. The map shows what should exist; the review queue is where drafts earn approval; runs generate new drafts in cost-capped batches; the pattern table shows whether the generator's own approaches are improving.

Knowledge Base

Knowledge Base

Map · review queue · generation runs · pattern track record

Loading…
Coaching answer source

Coaching answer source

What Ask FalconEye serves coaching answers from. Switching (either direction) requires a Duo push.

Current source Loading…
Auto-approval

Auto-approval taper

Off by default. When on, entries whose confidence clears the threshold AND whose concept has broad situational coverage skip manual review.

Auto-approve high-confidence drafts

Every sales and demo call, and what came of it

Calls come straight from Google Calendar; the breakdown you log against one is keyed to that calendar event, so nothing has to be matched up by hand afterwards. A call whose start time has passed without a breakdown gets a nudge at the top until it's logged.

Calls

Calls

Log an outcome, notes, a next action, and any documents from the call

Loading…
Sales & Demo Call FlowReference — open before a call

SALES & DEMO CALL FLOW

FalconEye — Faceoff Intelligence System · Sales & Demo Call Guide

Prepared by: Christopher J. O'Connor
Format: 30 minutes, video + screen share
Goal: strong pre-call setup, paced demo, pricing with time left to close

This is a flow, not a script. Read it once before each call, glance at it during if you need to.

I. Step Zero — Pre-Call Prep
A. The moment the call gets scheduled

Send a short follow-up asking for two things: a link to recent film of the prospect's next opponent, and their season schedule (or a link to it). Frame it as “so I can have something real ready to show you” — not homework. If they send it, the whole demo becomes about their actual opponent and their actual schedule instead of a canned example. The Call Prep agent drafts this automatically — look for the “Prep drafted” tag on the call above.

B. If they don't send anything (expect this often)
  • Have a fallback opponent clip ready — clean footage, a few minutes long
  • Have a fallback schedule ready to import — a real public school schedule works fine
  • Don't make a thing of it on the call — run the fallback with the same energy
C. Day-of / hour-before checklist
  • Log into the demo tenant ahead of time
  • Confirm which sport mode you're demoing in (faceoff vs. draw)
  • Have the opponent film (real or fallback) ready to upload
  • Have the schedule (real or fallback) ready to import
  • Have a PDF of yourself ready for the Self-Scout demo
  • Have a Training Hub tab already open, just not active
  • Know the program's level (college ladder vs. team ladder)
  • Screen share tested, notifications off
II. The Call — 30 Minutes, Video + Screen Share
A. Open (0:00–3:00)

Rapport first, no pitch yet. Ask what their current opponent prep actually looks like — how long it takes, who does it, what's frustrating about it. Casually get a sense of how many hours a week this takes right now. Don't do the math yet — just let the number sit. You'll come back to it at the close.

B. Scout Report tour (3:00–6:00)

Pull up an opponent profile. Walk the Scout Report tab — tendencies, notes, the shape of a finished scouting profile. This is the “here's the destination” moment before showing how fast you get there.

C. Kick off the live breakdown (6:00–6:30)

Upload their real opponent's film (or the fallback) and start the analysis live. Say plainly what's happening — FalconEye is actually watching the film right now, rep by rep.

“This'll take a few minutes to run — let me show you a couple other things while it works.”
D. While it processes (6:30–14:00ish)

Schedule import: pull up their real schedule and import it live — fast, and its own small “oh that's slick” moment. It bridges naturally into Game Plan territory once loaded.

Global Search: one quick pass — hit the search bar, pull up a player or term, close it. Keep talking lacrosse and their program during this stretch; it's relationship-building time, not a second pitch segment.

E. Breakdown lands — the payoff

Open the Analysis tab and walk through what it actually generated. Then Game Plan, showing how the breakdown turns into a plan against that opponent. Now — with a real, fresh breakdown in front of you — open Compare or Rankings. This only lands this hard because you waited.

F. Self-Scout — turn it on yourself (20:00–23:00)

Import your own PDF as the self-scout subject, generate the analysis, let it surface a real weakness or two. Click Send to Training Hub on one, then switch to the Training Hub tab you already had open and show that same item sitting there as a live, open deficiency. Found it, sent it, it's actionable — about 90 seconds.

G. Live Tracker (bonus, only if time)

Show it briefly if you're ahead of schedule. Cut it before you cut pricing time.

H. Support mention

Right before pricing, mention support as a trust builder, not a feature tour — how fast you respond if anything comes up.

I. Close — hours saved into pricing (26:00–30:00)

Close the loop from minute two. Let them say the hours-per-week number back to you if you can. Summarize what they actually saw — you've been demoing the top tier the whole call without naming it. Now name it. State the number plainly, no apology in your voice. Mention lighter tiers only as the trimmed-down version of what they just watched. Close with next steps and timeline.

III. Pricing Cheat Sheet (For Your Eyes Only)

Not something to share verbatim — for your own reference during the call.

A. College Ladder (NAIA / D3 / D2 / D1)
TierPriceWhat it includes
Scout$1,750/yrSelf-scout, PDF export, public rankings only
Contender$3,500/yrAdds wing/circle play, live tracker, compare, search, trainer integration
Champion$6,000/yrEverything, including practice plans, recruits, full ranking suite
B. Team Ladder (High School / Youth Club / MCLA / WCLA)

Lower price points on the same three-tier structure — pull exact numbers from admin before quoting.

C. Discounts & Add-Ons

Handled in the contract tool afterward — nothing here needs deciding live unless pushed.

Content Queue

Content Queue

Blog posts & newsletters — review before approving; sending/publishing is manual today (no CMS/mass-mail integration yet)

Loading…
Waitlist

Training Hub Waitlist

Welcome + progress-update drafts — approve to send

Loading…

Stages rows daily at 5am — you paste them in

Sync pulls settled Authorize.net charges every morning and queues them as balanced journal rows. It can't write them into your workbook directly: the Microsoft Graph Excel API doesn't support personal OneDrive, and that's where the file lives. So rows accumulate here until you download the CSV, paste them into the General Journal, and hit Mark as pasted. Anything still waiting shows up in the 6am Daily Brief. Leave column D (Account Name) alone when pasting — it's a VLOOKUP. See functions/finance.js; functions/financeWorkbook.js documents what direct-write would need.

OneDrive

OneDrive workbook

Loading…

Sync Status

Sync Status

Loading…

No sync run yet.
AI Token Spend

AI Token Spend

Estimated Claude + Gemini cost, same figures as the System & Ops usage card

AI Credit Reserve

AI Credit Reserve

What to set aside for AI credits already sold, priced at the tier in effect when the sale happened

Loading…
Touch Queue

Touch Queue

Marketing/nurture touches held back by the once-per-week-per-coach budget — nothing here is dropped silently

Loading…
Integrations

Integrations

Status only — key values never render here, even to you

Loading…
Usage Alerts

Usage Alerts

Call-volume spikes past 3x an agent's trailing average, plus cost tripwires — unpriced models and video estimates outside the expected band

Loading…
All Programs

All Programs

Every program at once — usage & billing, users, settings, invites, support tickets, errors, AI corrections, and the audit log. Unlike the cards below, none of this tab is scoped to the selected program.

team

Role Management

Assign Player (read-only) or Coach (full access) to specific accounts

Accounts listed as Player get read-only access — they can view scout data but cannot edit profiles, import scouts, or export PDFs. Accounts listed as Coach have full access. Anyone not listed here defaults to Coach. Setting someone as Admin is different from Player/Coach — it designates this program's single Team Admin (a narrower, program-scoped login to this same admin panel: Role Management, Trainer Access, Invite Users, and read-only usage only — see Program Settings for details). It takes effect immediately when added, not on "Save Changes" below, and there can only be one at a time — adding a new one replaces the current one.
Configured Accounts
Loading…
training

Trainer Access

Training Hub — grants HUD sessions, drill uploads, and player assignment

Trainer is additive — a Coach can also be a Trainer (e.g. your head coach running HUD sessions). Checking this box does not change their Player/Coach role above. Accounts can also self-register from the Training Hub; they'll show here as Pending until approved.
Loading…
messages

Invite Users

Send a sign-up link directly from this panel

Enter an email address and choose a role. FalconEye will pre-set their role and email them a working sign-in link — no password needed. Clicking the link signs them straight into the app.
Pending Invitations
Loading…
gear_1

Program Settings

Team name, season label, and branding

Team Admin
Optionally designate ONE person as this program's Team Admin. They can sign into this same admin panel with a stripped-down view — Role Management, Trainer Access, Invite Users, and a read-only view of AI usage and plan tier — scoped to this program only, with no visibility into any other program's data. Leave blank for no Team Admin.
schedule

Season & Roster Control

Archive the current season, or manage the separate CSV roster import list

Start New Season — archives every opponent-scout and self-scout player's current data to a read-only archive, then resets everyone to a blank season. This is the real scouting data used throughout the app.
Export/Clear CSV Roster Import — a separate, older CSV name/position/number list (imported via "Import Roster CSV" below) kept in its own storage. It is not the live scouting roster or scout data — exporting or clearing it has no effect on players, stats, notes, or the season archive above.
statistics

Bulk Import / Export

Upload a roster CSV to pre-populate names, or download all scout data

Import Roster CSV

Upload a CSV with columns: name, position, number, year. Existing entries will not be overwritten.

Export All Scout Data

Downloads every scout profile and note for this program as a single CSV for backup or analysis.

save

Data Backups

View and restore automatic rolling/daily backups for the selected program above

target

AI Breakdown Accuracy

Log corrections when a coach reviews film and finds the AI got something wrong

Log a Correction
Category Breakdown
Suggest a Prompt Fix
Learning
Click Refresh to load the learning report.
Analysis tuning
Select a program to load its analysis settings.
Analysis models this key can reach
Lists the Gemini models the live API key can actually call, and whether each one is priced.
Recent Corrections
back_arrow

Undo History

Revert recent changes made by any user in this program

Each entry below represents a saved state snapshot taken before a change was committed. Click to_watch Preview to see exactly what a snapshot would change before restoring it, or Undo to restore it directly. Only the last 10 snapshots are kept per program.
Loading…
reports

Audit Log

Track who changed what and when across this program

No activity recorded yet.
Training Activity

Training Activity

Recent practice plans and player deficiencies for the program selected above (Trainer 2.0)

Recent Practice Plans
Select a program above to load.
Deficiencies Snapshot
Select a program above to load.
tools

Per-Player Storage Upgrade

Moves comments, film notes and match history into their own storage for the selected program. Required for player commenting, and the fix for "invalid-argument" save failures.

Select a program to check its storage.
Two things depend on this. Until a program is upgraded, comments, film notes and match history all live inside one big data document — which means (1) players can't comment at all, because that document is coach-only to write, and (2) once it passes Firestore's 1024KB limit every save fails with "invalid-argument".

Running it moves those items into their own per-item storage. It is safe, one-way, and deletes nothing — everything is reorganized, not removed, and existing comments, notes and game history keep showing exactly as before. On a program that's already upgraded this runs a quick write/read persistence test instead.
statistics

API Credit Usage

Which coaches on the selected program are using the most Claude / Gemini credits, and how that compares to the team's weekly budget.

Estimate calibration
Checks recent Gemini video calls across every program and reports what the pre-flight estimate should reserve. Read-only — it changes nothing on its own.
Cost is an estimate (token counts × published per-model pricing), not a billed invoice. A weekly ranking is also emailed automatically every Monday to the report email above, once a budget is set. Usage starts accumulating from the moment this feature is deployed — earlier calls aren't retroactively counted.

🎩 Jarvis — Usage & Audit

The admin assistant's own meter: month spend vs cap, what was asked, which data domains each answer touched, and flags queued for tomorrow's Daily Brief.

Loading…
System Health

System Health

Checks the integrations that break quietly — API keys, email delivery, and security settings — so you find out here rather than from a customer.

Nothing here spends money: key presence is checked, not validity, so running this is free and safe at any time. Anything that genuinely can't be verified from the server is reported as "unknown" rather than guessed at.
save

Storage Usage & Cleanup

How many stored bytes each program is costing you, and a safe purge for the temporary scout videos nothing has ever deleted.

Cloud Storage bills every month on everything retained, and scout-videos/ is a temporary staging area on the way to Gemini that has no cleanup — so every scouting import ever run is still being paid for. Scanning the whole bucket can take up to a minute.
API Usage & Cost

API Usage & Cost

Estimated Claude + Gemini token spend across every program — yesterday, this week, this month.

Estimates only, priced at the per-token rate in effect when each call was logged (see functions/usage-logger.js) — not a live bill from Anthropic/Google.
Error Monitoring

Error Monitoring

Recent app errors across every program, searchable by type, user, or message

0Total errors
0Affected users
0Last 24h
Most Common Errors
Bug Reports

Bug Reports

Filed from the in-app "Report Bug" button. An email goes out the moment one arrives — this is the running list.

Loading…
padlock

Super Admins

Control who can access this admin panel across all programs

warning Super admins have full access to every program's roles, settings, and data. Anyone added here can do everything you can do, including adding or removing other super admins. You () can never remove yourself.
Current Super Admins
Loading…
FalconEye breakdowns are generated automatically from film and may contain errors. Verify key stats before relying on them for game-planning decisions.