KAIRALI - EVERYONE ELSE AI-HUMAN HOMEWORK - COPY-PASTE PROMPTS

Use this only when you do not already have a named start or homework page.

All three starters are available in the kit. Run PROMPT 1 and PROMPT 2 in separate
projects; FULL DRIVE INDEX is required for completed company homework and TEST 25 is
setup proof only. PROMPT 3 is optional. Use THREE-WORKER-GO-LIVE-CHECKLIST.md for the
final readback. Downloaded, installed or connected alone does not mean live.

============================================================
PROMPT 0 - SETUP HELPER RESCUE
============================================================

I am stuck setting up my Kairali AI workspace. I do not know Terminal, Python, Git, GitHub, folders, projects or Codex.

Be my Setup Helper.

Before installing, ask me one question at a time for the exact company or group, legal entity, operating unit, jurisdictions, purpose, my relationship to the company, and compliance owner. Check current authoritative sources, treat historical charts only as leads, create a separate confirmed Gate 0 profile for each materially different entity or unit, and do not report ACTIVE while compliance questions remain.

1. Work out whether I am on Mac or Windows and check what is already installed before changing anything.
2. Do every approved safe setup step you can yourself.
3. If a click, login, account choice or permission must be done by me, show me only that one action in plain Mac or Windows words. Wait for me, then verify it worked.
4. Never ask me to use Terminal, PowerShell, Command Prompt, Python, a CLI or type a command.
5. Never ask for, read or repeat my password or one-time code.
6. Use only my approved company account and company folder.
7. Keep permissions on Ask for approval. Never choose Full access.
8. For the shared Kairali workspace, use GitHub Desktop buttons. For a standalone local project, do not install GitHub unless it is actually needed.
9. Continue until ChatGPT is installed, Codex is open, the correct project is connected, AGENTS.md is visible, approved apps are connected when required, and the startup test passes.
10. If you cannot continue safely, write one OPEN_REGISTER.md row with the failed step, exact error, what you checked, and the one human access or decision needed. Then tell me whether Ambuj or Abhilash must help.

Do not teach me how the machinery works unless I ask. Start now by checking what I already have.

============================================================
PROMPT 1 - PERSONAL WORK MEMORY + DAILY EMAIL EA - REQUIRED
Replace [TYPE YOUR NAME] before sending.
============================================================

My name is [TYPE YOUR NAME]. This is task EMAIL-HW-001.

Read AGENTS.md, AI-HUMAN.md, PARAMETERS.md, MASTER_CURSOR.md, OPEN_REGISTER.md,
TODAY.md, TOOLBOX.md, GATES.md, WORK-GATES.md, DECISIONS.md, EMAIL-TRIAGE-RULES.md,
EMAIL-TRIAGE-CURSOR.md, PERSONAL-WORK-MEMORY.md, MEMORY-REVIEW-QUEUE.md,
MEMORY-SOURCES.md, ASK-MY-WORK-MEMORY.md and DAILY-TRIAGE-PROMPT.md.

First, replace “Kairali employee using this copy” with my name in this project's
owner fields only. Do not change the worker's name, purpose, batch cap or gates.

Ask me exactly one schedule question during setup: “What fixed local time should your daily email brief
run? For example, 8:30 AM.” Wait for my answer. Detect the computer's local time zone,
show it to me and ask only for confirmation if it appears wrong. Record the approved
time and time zone in PARAMETERS.md. Do not create an automation yet.

Then check whether the Gmail connector is available under Apps and connected to my
approved company account. If it is missing or disconnected, do not troubleshoot with Terminal and do
not ask for my password. Show me only the next click or login I must do, wait for me,
and verify the connection. If the connected account is not the approved company
account, stop without reading mail.

Run one manual read-only pilot before scheduling anything. Read no more than the 25
most recent messages currently in the Inbox, excluding Spam and Trash. Do not open
attachments and do not rely on Gmail's Important marker alone. Read thread context
when a message may need action.

Create EMAIL-TRIAGE-REPORT.md with exactly these sections:
- TODAY AT A GLANCE — what arrived, what changed and the shortest useful priority list;
- NEEDS ACTION — sender, subject, why it matters, deadline or age, and the next human
  action;
- PROPOSED REPLIES — concise local reply text only when a reply would help, based on
  confirmed facts and evidenced tone, and visibly marked NOT SENT;
- WAITING / FOLLOW UP — who owes the next step, what is expected, age, and a suggested
  follow-up date;
- WORTH READING — every genuinely useful item, one line explaining why;
- HUMAN REVIEW — sender, subject and date only for sensitive or Gate 0 mail;
- NEWSLETTERS TO REVIEW — recommend unsubscribe only when repeated evidence shows the
  newsletter is not useful to me, my company or my role; include why and never
  unsubscribe automatically;
- MEMORY LEARNED OR NEEDS CONFIRMATION — concise source-backed candidates about my
  role, priorities, people, preferences, recurring work or commitments;
- FILTER HEALTH — pilot count, likely low-risk filing count, uncertain senders, and
  any proposed rule change; and
- RUN SUMMARY — counts, exact selection rule and the sentence “PILOT ONLY: no email
  was sent, drafted, archived, labelled, deleted, moved, marked read or unread; no
  attachment was opened; no Gmail filter was changed.”

Put critical account, security, broken-system or direct-human items first. Include a
direct Gmail link when the connector provides one. Do not copy full private message
text into the report. For medical, dosage, certification, legal, spend, credentials,
banking, personal HR or other highly sensitive mail, use HUMAN REVIEW and do not
advise, rewrite or quote it. If nothing needs attention, say “No action required”
instead of filling the report with low-value mail.

Read the pilot report and EMAIL-TRIAGE-RULES.md back to me. Then ask me exactly one
approval question: “Choose BRIEF ONLY or BRIEF + SAFE FILING.” Explain in one sentence
that safe filing can only apply the approved AI labels, archive clearly low-risk mail
and mark that mail read; proposed replies remain local and NOT SENT; unsubscribe and
permanent-filter proposals need my separate approval for the exact action. Wait for my
answer and record it in DECISIONS.md and PARAMETERS.md.

Then build the supervised memory baseline. Ask exactly one question: “Choose RECENT
WORK 25 for one learning batch, or CHOOSE WORK PERIOD to name the company-mail date
range or query I may review in checkpointed batches.” Wait for my answer and record
the exact approved scope in MEMORY-SOURCES.md. Search only that approved company Inbox
and Sent work-mail scope, excluding Spam and Trash. Never open attachments. Process no
more than 25 threads before each checkpoint.

Add only concise candidates to MEMORY-REVIEW-QUEUE.md for my role and priorities,
people and work relationships, communication preferences, recurring work and open
commitments. Do not copy full messages or infer personality, sensitive traits, private
relationships, authority or intent. Let me rule CONFIRM, CORRECT, KEEP AS OBSERVED,
EXCLUDE, FORGET or NOT MEMORY. Move only ruled items to PERSONAL-WORK-MEMORY.md with a
source, status, date and review point. Show me SHOW MY MEMORY, CORRECT MEMORY <ID>,
FORGET <ID>, EXCLUDE <topic or person> and REFRESH MEMORY.

After the pilot passes and my choice is recorded, create one daily recurring Codex
automation named “Daily Email Importance Brief — [MY NAME]” at my approved local time
and time zone, running against this Email Triage project. Its task prompt must tell it
to read and follow DAILY-TRIAGE-PROMPT.md exactly. Add the complete approved schedule,
scope, stop condition and status to AUTOMATIONS.md. Do not create a duplicate if one
with that name already exists.

Explain that this local automation runs only while the computer is awake, ChatGPT is
running and this project remains available. Verify the automation card, time, time
zone, project and prompt. Then update the ledger, register, cursor, today file and
evidence log and validate this workspace.

============================================================
PROMPT 2 - DRIVE INVENTORY AI HUMAN - REQUIRED
Replace [TYPE YOUR NAME] before sending.
============================================================

My name is [TYPE YOUR NAME]. This is task DRIVE-HW-001.

Read AGENTS.md, AI-HUMAN.md, PARAMETERS.md, MASTER_CURSOR.md, OPEN_REGISTER.md,
TODAY.md, TOOLBOX.md, GATES.md, WORK-GATES.md, DECISIONS.md, AUTOMATIONS.md,
DRIVE-REGISTER-SCHEMA.md and WEEKLY-DRIVE-REFRESH-PROMPT.md.

First, replace “Kairali employee using this copy” with my name in this project's
owner fields only. Do not change the worker's name, purpose, task, limits or gates.

Then check whether the Google Drive app is available under Apps and connected to my
approved company account. If it is missing or disconnected, do not troubleshoot with Terminal
and do not ask for my password. Show me only the next click or login I must do, wait
for me, and verify the connection before continuing.

When the approved company Drive is connected, show both choices in plain language and
ask me one question: “Choose TEST 25 for a 25-item learning sample, or FULL DRIVE INDEX
for the completed company master index.” Wait for my answer. Do not choose for me.

For either choice, read metadata only. Never open or download file contents. Use batches
of no more than 25 items and checkpoint after every batch.

Immediately create or update these local files after I choose a mode. Start one new
generation ID for the selected run and put it in every output. Do not report a
successful run until the outputs are created, reopened and reconciled:
- DRIVE-INDEX.jsonl, the normalized AI-readable file of record, with one JSON object
  per stable item ID and these fields: generation_id, item_id, name, file_type,
  owner_or_relationship, owned_or_created_by_me, shared_with_me, shared_by_me,
  modified_time, parent_or_location, sharing_status, web_link, source_scope,
  visibility_status, first_indexed_at_utc, last_seen_at_utc, indexed_at_utc,
  generation_id and review_note;
- one human register generated from that exact JSONL data. If a Google Sheets app is
  already connected and I explicitly approve its write permission and exact target,
  ask whether I want GOOGLE SHEET or LOCAL CSV. Otherwise create DRIVE-REGISTER.csv
  without asking for broader access. Never maintain two human registers for the same
  generation;
- DRIVE-INDEX.md, with generation ID, human-register type and locator, approved
  account label, chosen mode, coverage, batch and unique/relationship/overlap/unknown/
  duplicate/added/updated/unchanged counts, unavailable fields, freshness and a
  plain-language later-use guide; and
- DRIVE-INDEX-RECEIPT.json, with the same generation ID, mode, selected human-register
  type and locator, readback generation/row count/time, scope coverage and all counts;
  and
- DRIVE-INDEX-CURSOR.json, with the same generation ID, mode and counts, last
  reconciled batch, connector next-page state, last successful refresh and exact next
  action. Never store a secret.

Use the connector's stable item ID to upsert DRIVE-INDEX.jsonl and prevent duplicates.
If a saved cursor expires or a supported change feed is unavailable, restart a bounded
source-scope scan and skip or update IDs already recorded. Never delete an indexed
record merely because it is temporarily invisible; mark NOT SEEN THIS RUN — VERIFY.
Use UNKNOWN for every unavailable value instead of a guess. Use HUMAN REVIEW for titles
or metadata that point to medical, dosage, certification, legal, spend, credentials,
banking, personal HR or other highly sensitive material; do not open them.

If I choose TEST 25, index up to 25 recently modified or recently viewed items, label
the result TEST 25 COMPLETE — FULL DRIVE NOT INDEXED, then stop.

If I choose FULL DRIVE INDEX, enumerate every page the connector exposes for all visible
scopes it supports: owned or created by me, shared with me, shared by me when that
relationship is available, and visible shared drives. Work in batches of no more than
25. After each batch, save JSONL, regenerate or update the one human register, reopen
both registers, reconcile them, then advance the cursor and save summary, state and
evidence. Continue automatically inside this approved task. If the session must end,
validate and leave the cursor ready so a new session resumes without starting over.
Call the result complete only when every supported scope has no next page. Record any
scope the connector cannot expose as UNKNOWN — CONNECTOR COVERAGE GAP; never claim it
was scanned.

After the selected mode finishes, reopen DRIVE-INDEX.jsonl, parse every non-empty line,
count objects and unique IDs, and reject malformed JSON or duplicate IDs. Reopen the
selected human register and count its data rows. Compare both with DRIVE-INDEX.md,
DRIVE-INDEX-RECEIPT.json and DRIVE-INDEX-CURSOR.json. Generation ID, unique and relationship/overlap/unknown and
added/updated/unchanged counts must agree everywhere. Missing, empty, malformed or
disagreeing output fails closed and the cursor does not advance. Use TRUE, FALSE or
UNKNOWN for each relationship flag and never add overlapping relationship counts as
if they were unique items.
Run validate_drive_register.py. If it fails, report FAILED — REGISTER NOT READY,
preserve the prior successful cursor and keep the task open.

Put this exact sentence in DRIVE-INDEX.md: “No Drive file content was opened or
downloaded, and no Drive item was created, edited, renamed, moved, shared, unshared,
deleted or organized.”

After the first successful FULL DRIVE INDEX, ask whether I choose SET WEEKLY REFRESH
or NOT NOW. Do not activate one silently. If I choose it, ask one schedule question
for my day, exact local time within my preferred window and time zone. Suggest Sunday
night but invent no time. Create one “Weekly Drive Index Refresh — [MY NAME]” automation
against this exact project using WEEKLY-DRIVE-REFRESH-PROMPT.md. Verify its card and
record the matching ACTIVE row in AUTOMATIONS.md. Explain the computer, ChatGPT,
folder and connector conditions and show pause, edit, remove and RUN DRIVE REFRESH NOW
recovery. If I choose NOT NOW, record NOT ENABLED BY CHOICE.

Read the finished index summary back to me. If it passes the task's exit evidence,
update the ledger, register, cursor, today file and evidence log. Then validate this
workspace.

============================================================
PROMPT 3 - WEEKLY LINKEDIN MESSAGE ASSISTANT - OPTIONAL
Replace [TYPE YOUR NAME] before sending.
============================================================

My name is [TYPE YOUR NAME]. I choose the optional task LINKEDIN-WEEKLY-001.

Read AGENTS.md, AI-HUMAN.md, PARAMETERS.md, MASTER_CURSOR.md, OPEN_REGISTER.md,
TODAY.md, TOOLBOX.md, GATES.md, WORK-GATES.md, DECISIONS.md, SATURDAY-REVIEW-PROMPT.md,
LINKEDIN-TONE-AND-PRECEDENTS.md, LINKEDIN-REPLY-QUEUE.md,
LINKEDIN-REVIEW-CURSOR.md, LINKEDIN-INBOX-BATCH.md and
LINKEDIN-CONTROL-HANDOFF.md and CONFIRMED-LINKEDIN-LEARNINGS.md.

First, replace “Kairali employee using this copy” with my name in this project's
owner fields only. Do not change the worker name, purpose, limits or gates.

You may use Computer Use only inside this approved local worker and `@Chrome` only on
an approved non-LinkedIn public page. A permission grants capability, not permission
to use LinkedIn. Keep Ask for approval; never choose Full access or Always allow.
Before LinkedIn appears, stop every computer/browser tool and show the exact `YOUR TURN
ON LINKEDIN` handoff. Never sign in to, open, view, read, inspect, control, scrape,
search, click, type, copy, paste, or send through LinkedIn. I will copy in message text
and manually send any reply I approve.

Show only one setup action at a time and wait after it.

1. Ask exactly: “What local time every Saturday should your LinkedIn message review
   start? For example, 10:00 AM.”
2. Detect the device's local time zone, show it in plain words, and ask whether it is
   correct. Do not guess if it cannot be detected.
3. Ask me to close every LinkedIn tab and app. Then show me the one exact `@Computer`
   request in LINKEDIN-CONTROL-HANDOFF.md. Wait while ChatGPT shows its real permission
   prompt. Ask me to approve only this task and visible local project, then verify that
   you can name AGENTS.md and LINKEDIN-CONTROL-HANDOFF.md. Do not simulate a permission
   button, approve a request for me, or open an external site. Record the proof.
4. If an approved public setup page is genuinely needed, ask me to start that one
   request with `@Chrome`. Use only the named non-LinkedIn page, then stop browser
   control. Never use Chrome while LinkedIn is visible.
5. Ask me to open LINKEDIN-TONE-AND-PRECEDENTS.md and paste up to 25 representative
   earlier incoming-message and sent-reply pairs that I am allowed to keep locally.
   I may remove names or write NONE YET. Never ask for a password, code, private key,
   confidential attachment, sensitive personal data, or message I am not allowed to
   store.
6. Derive only evidenced tone and routing rules. If I supplied no examples, start with
   no high-confidence precedents; do not invent my voice.
7. Create a native weekly automation named “Saturday LinkedIn Message Review —
   [my name]” for my chosen Saturday local time. Its only automated job is to open this
   local project and present SATURDAY-REVIEW-PROMPT.md. It must never open, read, click,
   control, or send through LinkedIn. Show the automation card and ask me to approve it
   before marking it ACTIVE.
8. Run one supervised pilot. Stop Computer Use and Chrome first. Make no more computer
   or browser tool calls and show the exact `YOUR TURN ON LINKEDIN` handoff. Ask me to
   open LinkedIn myself, check both Focused and Other, close LinkedIn, return here, and
   paste no more than 25 unread conversations into LINKEDIN-INBOX-BATCH.md.
   I must not paste passwords, codes, sensitive data, suspicious links, or attachments.
   Do not continue until LinkedIn is closed and I say BATCH READY.
9. Process only what I pasted. Put evidenced, routine replies under READY TO SEND and
   uncertain or consequential replies under NEEDS YOUR DECISION with a stable S.No.,
   sender, date, concise summary, proposed reply, and reason. A READY TO SEND item is
   still a draft. I review it and manually press Send in LinkedIn.
10. Stop every computer/browser tool again before I return to LinkedIn. After I act,
   ask me to mark each item SENT AS WRITTEN, EDITED AND SENT, SKIPPED, or
   KEEP FOR LATER. Never claim a message was sent without my confirmation. Learn only
   from confirmed outcomes and keep unresolved items in LINKEDIN-REPLY-QUEUE.md.
11. Ask before saving any reusable tone, person or work-context learning. Save only a
   concise employee-confirmed row in CONFIRMED-LINKEDIN-LEARNINGS.md, never a full
   conversation or sensitive/private inference. Show how I can correct or forget it.

If more than 25 items remain, checkpoint the cursor and offer the next batch only after
the first batch is recorded. Never weaken the 25-item batch cap.

When the pilot passes, update AUTOMATIONS.md, the ledger, register, cursor, today file,
and evidence log. Then validate this workspace and show the schedule, pilot counts,
remaining queue count, and the exact manual-send boundary.
