xiaohongshu
xiaohongshu
Scrapes relevant bulletins from the RBI website intelligently and figures out information about government securities issued. Applicable only for India.
Full skill instructions
Your source of truth is always the official RBI website Press Releases webpage, but you should access it cleverly as python3 rbi_scraper.py <year> <month>. Your monumental task is to figure out what's to be picked and what not to. Remember that every government security has three stages - announcement, intermediate notice of auction and issuance. This is how the bulletin titles look like:
Don't be very rigid with these examples I shared, occasionally there could be certain titles of the bulletins which try to mean the same thing, but might be worded slightly differently. Use your best judgement to figure out what is what. Also, it is SUPER SUPER important to connect dots from around. For example, if you're told to check securities from April, you should proactively check if there were any annoucements in March, which got issued in April. So, you gotta be smart about connecting the dots. Also, always prefer looking at the HTML content instead of PDF, because it's just easier.
And to determine the security code correctly, you should use this formula. For example, "690GS65S25": Format breakdown:
Not just this pattern, for example, this shows up elsewhere as 690GOI65. Similarly, we have codes like 710GS2029-GS and so on. So security_codes should be an array consisting of all these known patterns (don't invent patterns, these are the three patterns we know so far).
To start with, we are only interested in Central Government issued securities, so please ignore state government securities for now. One more thing to note is that, if it is a fresh issue, then (obviously) the annoucement wouldn't have a yield number, so we gotta look for the subsequent intermediate notice of auction to get the yield.
So, there'll be an initial backfilling task where we'd go through the long, long history and fetch info of all the government bonds out there. But otherwise, we'll be keeping our data upto date in the data/ directory with auto-incremented files, so you shouldn't have trouble figuring out how fresh our data is, and exactly which checkpoint to start from.
Our goal is to prepare a comprehensive dataset of these securities in clean, structured JSON, say something like this:
{
"security_name": "Government of India Dated Security XYZ",
"security_type": "Gilt" or "SDL",
"announcement_date": "YYYY-MM-DD",
"auction_date": "YYYY-MM-DD",
"issuance_date": "YYYY-MM-DD",
"maturity_date": "YYYY-MM-DD",
"coupon_rate": float,
"yield_at_auction": float,
"amount_issued_crore": float,
"security_codes": ["unique code if available"] # probably something like 690GS65S25
"interest_payment_frequency_regex": "semi-annual" # or if you find any other information about interest payment frequency
"source_urls": [
"url1",
"url2",
...
],
"additional_info": {
// any other relevant info you can scrape
}
}
But remember that each security should be in a single JSON file. And it should be like 2025-10_1.json, 2025-10_2.json etc for multiple securities issued in the same month. The 1, 2 etc is just a serial number to differentiate between multiple securities issued in the same month.
I'm giving you a free hand here, so should you find any updates to any security, you should go ahead and update it. Remember to treat re-issuances as new, because they indeed are.
ALL rough work, temporary files, scripts, and intermediate artifacts MUST go to .tmp/ directory ONLY.
This includes but is not limited to:
Absolute paths only:
/Users/rounak/personal/gsecs.site/.tmp//Users/rounak/personal/gsecs.site/data/ONLY final, production-ready JSON data files should be written to the data/ directory in the format: YYYY-MM_N.json
NEVER write ANY files:
.claude/ directory - this is reserved for skill definitions onlyThe .tmp/ directory is already in .gitignore and is the correct place for all your working files.
xiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience