← DPDP Planner and OrganizerCONTENT HISTORY

Update to DPDP Planner and Organizer

Snapshot Nov 4, 2026 · 12:09 UTC · version 0.1.2

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save DPDP Planner and Organizer and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Use this when a company in India needs its DPDP scope worked out: which industry question set applies, what personal data it holds, who it shares data with, and a confirmed company profile. Also use for DPDP scoping, India data protection questionnaire, data fiduciary profile, and the first step of a privacy compliance plan. Do not use for a data protection law outside India.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 463
    }
  ],
  "name": "dpdp-scoper",
  "skill_md_contents": "---\nname: dpdp-scoper\ndescription: Use this when a company in India needs its DPDP scope worked out: which industry question set applies, what personal data it holds, who it shares data with, and a confirmed company profile. Also use for DPDP scoping, India data protection questionnaire, data fiduciary profile, and the first step of a privacy compliance plan. Do not use for a data protection law outside India.\n---\n\n# DPDP Scoper\n\nThis step runs the interview and turns the answers into a company profile. Every later part of the plan is derived from it.\n\n## Tools\n\n- `start_dpdp_plan`: returns the first question batch and opens the intake screen.\n- `confirm_company_profile`: takes every answer so far and returns the next batch, then the profile.\n\n## The seed: what every call carries\n\nThe server keeps no state. Both tools take the same small seed.\n\n- `industry`: one of `healthcare`, `d2c`, `financial-services`, `saas`, `general`\n- `company_name`: at most 160 characters\n- `business_description`: at most 600 characters, a short business category\n- `role`: at most 80 characters, a job label\n- `answers`: every answer so far, keyed by question id\n\nEach answer is `{ value, basis }`.\n\n- `basis` is `stated` for a fact the user gave. It is `assumed` for anything you worked out.\n- Use the value `dont_know` for an unknown, with `basis: \"stated\"`, because the user said they do not know.\n- Each answer string stays under 300 characters. Up to 80 answers.\n\nRules:\n\n- Send the same industry, company name, description and role on every call.\n- Carry all earlier answers forward every time. The full seed with every answer runs about 2 KB.\n- Never send a `plan` field. The server rejects it.\n- Keep the whole argument under 8,000 bytes.\n\n## Step 1: Qualify\n\nAsk two questions first.\n\n1. Is this about your own rights as a person, or about a company?\n2. Do you want a quick answer, or the full plan?\n\nThen:\n\n- Own rights: give a short answer, cite the section or rule, and stop. No tool call.\n- Company plus quick answer: give a short cited answer. Offer the full plan in one line. Wait for the user.\n- Company plus full plan: continue.\n\n## Step 2: Start\n\nAsk which industry fits: healthcare, D2C and e-commerce, financial services, SaaS and B2B software, or general when none of the four fit. Ask for a short business description and the user's role.\n\nCall `start_dpdp_plan` with the seed and `answers: {}`.\n\nThe intake screen appears with every question, grouped in sections, and a \"Send my answers\" button. Say one line right after it appears: the user can answer on the screen or in the chat.\n\n## Step 3: Run the interview\n\nThe screen path:\n\n- The user fills the screen and their answers arrive as one chat message.\n- Call `confirm_company_profile` once with the seed and all of them.\n\nThe chat path:\n\n- Read `interview.next_questions`, up to three at a time.\n- Ask them with their `why` line and their options.\n- Record the answers, then call `confirm_company_profile` with the seed and every answer so far.\n- Read `interview.remaining` and repeat until it reaches zero.\n\nBoth paths:\n\n- Use the user's language level and their own work words for their tools and teams.\n- Accept \"don't know\". That answer leaves the queue and stays in the profile's open list.\n- Do not invent an answer the user did not give. An inference goes in as `assumed`.\n- Never call `confirm_company_profile` with no new answer.\n\n## Step 4: Confirm the profile\n\n- When `remaining` is zero, the result carries `profile`.\n- Show the facts with their labels and their marks, the flags, and the open questions.\n- Say the counts: stated, assumed, open.\n- Ask the user to correct anything wrong. Fix that answer and call `confirm_company_profile` again.\n\n## Reading a result\n\nEach result holds `schema_version: 2`, `step`, `company_name`, `counts`, `disclaimer` and the part this step made. The screen shows the detail.\n\n- Say the counts and the few lines that matter.\n- Do not recite every question or fact. Point the user at the screen.\n- Never name a fact or a flag the result did not return.\n\n## Stated and assumed\n\n- A fact the user said is `stated`. A fact you worked out is `assumed`.\n- The mark rides in the seed, so it survives every later step.\n- The user's own words are the only thing that turns assumed into stated.\n\n## Legal statements\n\n- Cite the section or rule from the result on every legal point.\n- Leave out any point with no citation in the result.\n- Do not import GDPR words into DPDP.\n- Never say the company is compliant or in breach.\n\n## Support requests\n\n- Do not add a contact line to your replies.\n- When the user is stuck, help with the step itself.\n- If the user asks how to reach MBS about the planner, give the contact page once: https://www.meridianbridgestrategy.com/contact\n- Never give a person's name, an email address or a booking link.\n\n## What happens next\n\nOnce the profile is confirmed, tell the user the next step is the data map, then the questions for a lawyer, the gaps, the 30-day plan and the buying guide. Offer to carry on. Keep the seed, because every later call needs it.\n\n## What to leave out\n\n- Send only the seed fields the schema asks for. No chat history, no files, no unrelated context.\n- Ask for kinds of data, tools, outside companies and counts.\n- Never ask for names, contact details or records of real people. The server rejects an email address, a phone number or an ID number with `PERSONAL_RECORDS`. If the user pastes such records, say you will not take them, and ask for the kinds of data held.\n\n## Host reply\n\n- Describe the result in plain text on Codex. Screens and the Save the pack button belong to ChatGPT; mention them when that host provides them.\n- Explain the planner boundary in your own words. Keep internal skill paths and instruction quotes out of the reply.\n\n## User confirmation\n\n- Ask a question batch, then wait for the user. Repeat confirm only after answers change. Mark other answers dont_know when the user asks to leave them unknown.\n- Carry profile_confirmed true only after the user confirms the profile, and map_confirmed true only after the user confirms the map. Clear the relevant confirmation when its inputs change.\n"
}

SHA-256 of public snapshot: b05809ef7b5128ef3b924edf1d39b3e5da56386a1335ad0c05673b179165828b