Skip to content

feat(skills): add sg-cpf-retirement-planning skill with complete references and agents#5

Merged
Jagatees merged 4 commits into
Jagatees:mainfrom
ishnad:main
Feb 28, 2026
Merged

feat(skills): add sg-cpf-retirement-planning skill with complete references and agents#5
Jagatees merged 4 commits into
Jagatees:mainfrom
ishnad:main

Conversation

@ishnad
Copy link
Copy Markdown
Contributor

@ishnad ishnad commented Feb 27, 2026

Add Singapore CPF retirement planning skill with dynamic parameter retrieval, safety governance, source trust tiers, and multi-platform agent commands for helping Singaporeans navigate retirement planning.

…rences and agents

Add Singapore CPF retirement planning skill with dynamic parameter retrieval, safety governance, source trust tiers, and multi-platform agent commands for helping Singaporeans navigate retirement planning.
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new public skill for Singapore CPF retirement planning, including reference governance docs (sources, safety, QA) and agent command templates for multiple AI platforms.

Changes:

  • Introduces a complete reference set (source trust tiers, safety evals/assumptions, QA checklist, output template, review contacts).
  • Adds multi-platform agent entrypoints (OpenAI agent YAML, Claude/Gemini command templates, universal prompt).
  • Adds the skill definition (SKILL.md) describing workflow, data sourcing, and response structure.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
skills/public/sg-cpf-retirement-planning/SKILL.md Skill spec + workflow + required reference list
skills/public/sg-cpf-retirement-planning/references/intake.md I/O contract, trust tiers, freshness and governance metadata
skills/public/sg-cpf-retirement-planning/references/output-template.md Standardized response scaffold (params, milestones, recommendations, caveats)
skills/public/sg-cpf-retirement-planning/references/qa-checklist.md Pre/post response QA checks + regression test cases
skills/public/sg-cpf-retirement-planning/references/source-map.md Official source catalog + trust tiers and refresh schedule
skills/public/sg-cpf-retirement-planning/references/safety-evals.md Refuse/escalate/answer decisioning rubric
skills/public/sg-cpf-retirement-planning/references/safety-assumptions Safety assumptions + data minimization + escalation triggers
skills/public/sg-cpf-retirement-planning/references/review-contacts.md Escalation contacts and suggested routing language
skills/public/sg-cpf-retirement-planning/agents/openai-agent.yaml OpenAI agent config and system prompt
skills/public/sg-cpf-retirement-planning/agents/universal-prompt.md Copy/paste prompt for tools without native skill support
skills/public/sg-cpf-retirement-planning/agents/claude-command.md Claude command template
skills/public/sg-cpf-retirement-planning/agents/gemini-command.toml Gemini command template

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread skills/public/sg-cpf-retirement-planning/SKILL.md Outdated
Comment on lines +36 to +40
| Investment advice | Licensed Financial Advisor | https://www.mas.gov.sg/investor-alert-list |
| Tax planning | Tax Professional | IRAS: 1800-356 8622 |
| Estate planning | Lawyer / Will Writer | Law Society: 6532 7111 |

**MAS Financial Advisers Register**: https://www.mas.gov.sg/instruments/directory/financial-advisors-directory
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The MAS "Investor Alert List" link is for identifying unregulated entities, not for finding or selecting a licensed financial advisor. Using it as the primary contact for "Investment advice" may misdirect users. Point this row to the MAS Financial Advisers Register / directory (already linked below), or clearly label the alert list as a fraud-check resource rather than the escalation contact.

Suggested change
| Investment advice | Licensed Financial Advisor | https://www.mas.gov.sg/investor-alert-list |
| Tax planning | Tax Professional | IRAS: 1800-356 8622 |
| Estate planning | Lawyer / Will Writer | Law Society: 6532 7111 |
**MAS Financial Advisers Register**: https://www.mas.gov.sg/instruments/directory/financial-advisors-directory
| Investment advice | Licensed Financial Advisor | Search MAS Register |
| Tax planning | Tax Professional | IRAS: 1800-356 8622 |
| Estate planning | Lawyer / Will Writer | Law Society: 6532 7111 |
**MAS Financial Advisers Register (to find licensed financial advisers)**: https://www.mas.gov.sg/instruments/directory/financial-advisors-directory
**Check if an entity is unregulated / suspicious (MAS Investor Alert List)**: https://www.mas.gov.sg/investor-alert-list

Copilot uses AI. Check for mistakes.
- Current CPF balances (if known)

Defaults if not provided:
- Current year: 2026
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The universal prompt hard-codes "Current year: 2026" as the default. This will become stale quickly and contradicts the rest of the skill’s guidance to use the current calendar year and retrieve latest parameters. Recommend changing this to a dynamic instruction (e.g., "use the current calendar year") or to require the user to specify the year when it matters.

Suggested change
- Current year: 2026
- Current year: use the current calendar year (ask the user if unclear)

Copilot uses AI. Check for mistakes.
interface:
display_name: "CPF Retirement Planning (SG)"
short_description: "Navigate CPF schemes, optimize retirement savings, and plan for retirement adequacy in Singapore"
default_prompt: "Help me understand and optimize my CPF retirement planning. I will provide my age, employment status, and retirement goals. Guide me through the CPF system including retirement sums, CPF LIFE plans, and top-up strategies using the latest 2026 information from official Singapore government sources."
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The default prompt asks for "latest 2026 information". This bakes a specific year into user-facing behavior and may cause stale guidance after 2026 (even if retrieval logic is correct). Consider rephrasing to "latest information" and letting the system prompt handle year selection (current year unless user specifies).

Suggested change
default_prompt: "Help me understand and optimize my CPF retirement planning. I will provide my age, employment status, and retirement goals. Guide me through the CPF system including retirement sums, CPF LIFE plans, and top-up strategies using the latest 2026 information from official Singapore government sources."
default_prompt: "Help me understand and optimize my CPF retirement planning. I will provide my age, employment status, and retirement goals. Guide me through the CPF system including retirement sums, CPF LIFE plans, and top-up strategies using the latest information from official Singapore government sources."

Copilot uses AI. Check for mistakes.
Comment on lines +35 to +36
- CPF Account Structure: OA (2.5% floor), SA (4% floor), MA (4% floor), RA (4% floor)
- Retirement Sum Tiers: BRS, FRS (=2×BRS), ERS (=4×BRS)
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The system prompt hard-codes interest rate floors in the "Knowledge areas" section (e.g., "OA (2.5% floor), SA (4% floor)"). This can become outdated and also conflicts with the instruction that numeric claims should be retrieved from and cited to official sources. Prefer removing these numbers and relying on the retrieval step for any rates used in answers.

Suggested change
- CPF Account Structure: OA (2.5% floor), SA (4% floor), MA (4% floor), RA (4% floor)
- Retirement Sum Tiers: BRS, FRS (=2×BRS), ERS (=4×BRS)
- CPF Account Structure: OA, SA, MA, RA (retrieve latest interest rates from official CPF sources)
- Retirement Sum Tiers: BRS, FRS, ERS (retrieve latest tier relationships and amounts from official CPF sources)

Copilot uses AI. Check for mistakes.
Comment on lines +41 to +45
2026 Key Updates:
- ERS raised to double FRS ($440,800 for 2026)
- MRSS expanded to persons with disabilities of all ages
- Senior worker CPF contribution rates increased
- Budget 2026 CPF top-up for eligible Singaporeans aged 50+
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "2026 Key Updates" section hard-codes a specific ERS amount and other year-specific policy statements. Since the agent is also instructed to retrieve the latest parameters, these hard-coded values can conflict with retrieved sources and will go stale. Recommend removing the numeric value (or marking as an example) and always fetching/citing current figures from official URLs.

Suggested change
2026 Key Updates:
- ERS raised to double FRS ($440,800 for 2026)
- MRSS expanded to persons with disabilities of all ages
- Senior worker CPF contribution rates increased
- Budget 2026 CPF top-up for eligible Singaporeans aged 50+
Recent policy updates (examples – always verify latest details from official sources):
- ERS and retirement sum limits are periodically adjusted; retrieve current BRS/FRS/ERS figures from the official retirement sums page before citing any amounts.
- MRSS eligibility and matching rules may expand over time; confirm current criteria and caps from the official MRSS page.
- Senior worker CPF contribution rates are being phased in; check the latest contribution rate tables from CPF/MOM.
- Budget measures (e.g., one-off CPF top-ups) vary by year; confirm existence, eligibility (such as age bands), and amounts from the latest Budget and CPF announcements.

Copilot uses AI. Check for mistakes.
- Age: Ask if not provided (critical for milestones)
- Employment: Default to employee with caveat
- Retirement goals: Default to FRS at age 65
- Current year: 2026
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This command template hard-codes "Current year: 2026" as a default. That will become stale and can conflict with the instruction to retrieve the latest parameters. Prefer defaulting to the current calendar year (or asking the user to specify the applicable year when needed).

Suggested change
- Current year: 2026
- Current year: Use the calendar year at time of query (ask user if planning for a different year)

Copilot uses AI. Check for mistakes.
Comment on lines +19 to +23
- Budget 2026 highlights: https://www.cpf.gov.sg/member/infohub/news/cpf-related-announcements/budget-highlights-2026

## Quality Rules
- Only cite .gov.sg domains
- Use absolute dates (e.g., "from 1 January 2026")
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The prompt references a year-specific "Budget 2026 highlights" URL and uses 2026 in the absolute-date example. To keep the command reusable beyond 2026, consider pointing to a non-year-specific Budget/CPF announcements landing page (or instructing to use the latest Budget page for the current year).

Suggested change
- Budget 2026 highlights: https://www.cpf.gov.sg/member/infohub/news/cpf-related-announcements/budget-highlights-2026
## Quality Rules
- Only cite .gov.sg domains
- Use absolute dates (e.g., "from 1 January 2026")
- CPF-related Budget announcements: https://www.cpf.gov.sg/member/infohub/news/cpf-related-announcements
## Quality Rules
- Only cite .gov.sg domains
- Use absolute dates with explicit years (e.g., "from 1 January YYYY") based on the latest applicable policy information

Copilot uses AI. Check for mistakes.
|------|--------|-------|
| Tier 1 (Primary) | cpf.gov.sg, mom.gov.sg, moneysense.gov.sg | Authoritative; cite directly |
| Tier 2 (Secondary) | hdb.gov.sg, sgpc.gov.sg | Supporting; cite when relevant |
| Tier 3 (Context) | .gov.sg subdomains | Background context only |
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Source Trust Tiers table marks "Tier 3 (Context)" as ".gov.sg subdomains" and says to use them for background context only. This conflicts with the rest of this skill (and source-map.md) where multiple authoritative sources are themselves .gov.sg domains (e.g., cpf.gov.sg, mom.gov.sg, moneysense.gov.sg). Consider redefining Tier 3 to match the actual intended contextual sources (e.g., academic research, parliamentary Q&A, news) so official .gov.sg sources are not accidentally down-ranked.

Suggested change
| Tier 3 (Context) | .gov.sg subdomains | Background context only |
| Tier 3 (Context) | Reputable non-government sources (e.g., academic research, parliamentary Q&A, major news outlets) | Background context only; do not override official guidance |

Copilot uses AI. Check for mistakes.
Comment on lines +58 to +61
- ERS raised to double FRS ($440,800 for 2026)
- MRSS expanded to persons with disabilities of all ages
- Senior worker CPF contribution rates increased
- Budget 2026 CPF top-up for eligible Singaporeans aged 50+
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "2026 Key Updates" section includes hard-coded numeric/policy assertions (e.g., ERS value). Since the prompt also instructs to "retrieve current values from official source", these hard-coded values can conflict with retrieved values and become outdated. Prefer removing the hard-coded numbers (or clearly marking them as examples) and instructing the agent to always fetch and cite the current figures.

Suggested change
- ERS raised to double FRS ($440,800 for 2026)
- MRSS expanded to persons with disabilities of all ages
- Senior worker CPF contribution rates increased
- Budget 2026 CPF top-up for eligible Singaporeans aged 50+
- ERS / FRS / BRS parameters for 2026: retrieve current ERS/FRS ratios and dollar values from official CPF sources (do not rely on example values in this prompt).
- MRSS coverage and eligibility changes for 2026: retrieve current rules and qualifying criteria from official sources.
- Senior worker CPF contribution rate changes: retrieve current contribution rates and effective dates from official sources.
- Budget 2026 CPF top-up schemes: retrieve current eligibility criteria (including age bands), payout amounts, and conditions from official CPF/MOF sources; do not rely on hard-coded ages or amounts in this prompt.

Copilot uses AI. Check for mistakes.
@Jagatees
Copy link
Copy Markdown
Owner

Thanks for the strong CPF skill scaffold. I’d like to request changes before merge:

  1. Rename references/safety-assumptions -> references/safety-assumptions.md (currently mismatched with SKILL.md required references).

  2. Remove hardcoded 2026 defaults in agent templates and use dynamic wording like “current calendar year” (ask user if planning for another year).

  3. Remove hardcoded numeric/policy values from prompts (e.g., account rate floors, ERS dollar amount) and require retrieval from official sources before citing.

  4. In review-contacts.md, use MAS Financial Advisers Register as the primary investment-advice contact; keep Investor Alert List as fraud/unregulated check only.

  5. In references/intake.md, fix source trust tiers so .gov.sg sources are not down-ranked as Tier 3 context.

Once these are updated consistently across SKILL + agents + references, I’m happy to re-review.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 12 changed files in this pull request and generated 7 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread skills/public/sg-cpf-retirement-planning/SKILL.md Outdated
Comment thread skills/public/sg-cpf-retirement-planning/SKILL.md
Comment on lines +1 to +6
version: 1

interface:
display_name: "CPF Retirement Planning (SG)"
short_description: "Navigate CPF schemes, optimize retirement savings, and plan for retirement adequacy in Singapore"
default_prompt: "Help me understand and optimize my CPF retirement planning. I will provide my age, employment status, and retirement goals. Guide me through retirement sums, CPF LIFE plans, and top-up strategies using current official Singapore government sources for the relevant planning year."
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This skill uses agents/openai-agent.yaml, but existing skills and the repo scaffolding convention use agents/openai.yaml. If tooling expects the standard filename, this agent config may be ignored; consider renaming to openai.yaml (or adding a wrapper file) to match the established structure.

Copilot uses AI. Check for mistakes.
Comment thread skills/public/sg-cpf-retirement-planning/references/intake.md Outdated
Comment thread skills/public/sg-cpf-retirement-planning/references/qa-checklist.md Outdated
Comment thread skills/public/sg-cpf-retirement-planning/references/review-contacts.md Outdated
Comment thread skills/public/sg-cpf-retirement-planning/SKILL.md Outdated
@Jagatees
Copy link
Copy Markdown
Owner

@copilot open a new pull request to apply changes based on the comments in this thread

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@Jagatees Jagatees merged commit 5e9face into Jagatees:main Feb 28, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants