<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Koyelia Ghosh Roy</title>
    <description>The latest articles on DEV Community by Koyelia Ghosh Roy (@koyelia_ghoshroy_cb4d341).</description>
    <link>https://dev.to/koyelia_ghoshroy_cb4d341</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3503628%2F2400fc45-df7d-4dc6-a21d-12249e79a705.jpg</url>
      <title>DEV Community: Koyelia Ghosh Roy</title>
      <link>https://dev.to/koyelia_ghoshroy_cb4d341</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/koyelia_ghoshroy_cb4d341"/>
    <language>en</language>
    <item>
      <title>How Kiro Changed the Way I Build (for real)</title>
      <dc:creator>Koyelia Ghosh Roy</dc:creator>
      <pubDate>Mon, 15 Sep 2025 16:25:28 +0000</pubDate>
      <link>https://dev.to/koyelia_ghoshroy_cb4d341/how-kiro-changed-the-way-i-build-for-real-20h7</link>
      <guid>https://dev.to/koyelia_ghoshroy_cb4d341/how-kiro-changed-the-way-i-build-for-real-20h7</guid>
      <description>&lt;p&gt;Building ProcureSense with KIRO: the moment hooks + specs changed everything&lt;/p&gt;

&lt;p&gt;I used to start projects the way a lot of us do: open an editor, try a prompt, nudge things until they kind-of work. With KIRO, I stopped “winging it” and started building on rails. &lt;br&gt;
The &lt;em&gt;rails&lt;/em&gt; were two things: &lt;em&gt;agent hooks&lt;/em&gt; and &lt;em&gt;spec-to-code&lt;/em&gt;. Together, they let me vibe-code from scratch without creating future pain.&lt;/p&gt;

&lt;p&gt;When hooks clicked:&lt;br&gt;
In ProcureSense (a multi-agent procurement PoC running Llama 3.1 8B via Ollama, locally), every flow now wraps an agent with two tiny but powerful steps:&lt;br&gt;
-Pre-hook: assemble context before generation—policy, domain strategy, task/session state, and any live tool data.&lt;br&gt;
-Post-hook: send the draft through a policy critic that fixes risky clauses or misaligned terms.&lt;/p&gt;

&lt;p&gt;Practically, it means I don’t “remember to add the safety bits” each time. The hooks are declarative files (.kiro/hooks/...), so they’re always on. &lt;br&gt;
When I save a contract, the contract-analysis hook runs. &lt;br&gt;
When a forecast updates, the budget variance hook runs. &lt;br&gt;
No heroics, just predictable behavior.&lt;/p&gt;

&lt;p&gt;Specs → code (and fewer regrets)&lt;/p&gt;

&lt;p&gt;The other shift: I stopped free-handing endpoints. &lt;br&gt;
I write a short spec in plain language—route,request/response, constraints, “done” looks like X—and KIRO turns it into a FastAPI scaffold with Pydantic models and examples. &lt;br&gt;
That little ritual flips my mindset from “let’s try something” to engineering by contract. Specs live under .kiro/specs/... (requirements, design, tasks) and become living tests I can hit immediately.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Vibe coding, but with guardrails&lt;/em&gt;&lt;br&gt;
Hooks + specs gave me the confidence to move quickly. To keep outputs enterprise-aligned (not just locally optimal), I enhanced the rails with Advanced Context Engineering:&lt;br&gt;
-A Global Policy Context is pinned (never pruned).&lt;br&gt;
-Deterministic budgets across DSC (Domain Strategy), TSC (Task/Session), and ETC (Ephemeral Tool) with pruning order ETC → TSC → DSC → GPC (never).&lt;br&gt;
-Every draft is gated through the policy critic post-hook.&lt;/p&gt;

&lt;p&gt;It feels lightweight in practice: I experiment freely, while the rails keep agents honest.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Hybrid deployment that fits real life&lt;/em&gt;&lt;br&gt;
-FastAPI gives me production-grade REST, async performance, and type-safe contracts—easy to integrate when this grows up.&lt;br&gt;
-ngrok gives me an instant HTTPS URL to the same local API—no cloud setup, no cost—so stakeholders can click and see the real thing.&lt;br&gt;
The best part: it’s a hybrid path. I develop on-prem/CPU today; later I can swap ngrok for VPC/Kubernetes with no code changes.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What actually changed for me&lt;/em&gt;&lt;br&gt;
-I ship faster because specs remove ambiguity.&lt;br&gt;
-I break less because hooks make good behavior default.&lt;br&gt;
-I sleep better because context budgets and a policy critic keep outputs aligned to enterprise rules by construction.&lt;/p&gt;

&lt;p&gt;If you’re curious, start with :&lt;br&gt;
-one page: the routes you need, the data you accept/return, and the guardrails that can’t be skipped. &lt;br&gt;
-Add two hooks (pre/post), keep context budgets explicit, and you’ll feel the same shift I did—from coaxing a prompt to designing a system.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/koyeliaghosh/ProcureSense-Kiro" rel="noopener noreferrer"&gt;https://github.com/koyeliaghosh/ProcureSense-Kiro&lt;/a&gt;&lt;br&gt;
Project page: &lt;a href="https://koyeliaghosh.github.io/ProcureSense-Kiro/" rel="noopener noreferrer"&gt;https://koyeliaghosh.github.io/ProcureSense-Kiro/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>kiro</category>
      <category>hookedonkiro</category>
      <category>aiide</category>
    </item>
    <item>
      <title>How Kiro Changed the Way I Build (for real)</title>
      <dc:creator>Koyelia Ghosh Roy</dc:creator>
      <pubDate>Mon, 15 Sep 2025 11:52:01 +0000</pubDate>
      <link>https://dev.to/koyelia_ghoshroy_cb4d341/how-kiro-changed-the-way-i-build-for-real-4gbe</link>
      <guid>https://dev.to/koyelia_ghoshroy_cb4d341/how-kiro-changed-the-way-i-build-for-real-4gbe</guid>
      <description>&lt;p&gt;I used to “open editor → improvise.” Kiro flipped that. &lt;/p&gt;

&lt;p&gt;I now start with a one-page blueprint and Advanced Context Engineering (ACE): pin a Global Policy Context (GPC) that can’t be pruned, budget the rest (DSC/TSC/ETC) deterministically, and gate every draft through a Global Policy Critic. From there, I go spec-to-code: tiny work orders (route, schema, constraints, “done” checks). Kiro turns that into a clean FastAPI backbone where every agent runs on the same rails—pre-hook context assembly, post-hook policy review—so no agent “optimizes locally” and drifts from enterprise goals.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why hybrid architecture approach (FastAPI + ngrok)?&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;FastAPI (production backend)&lt;/strong&gt;&lt;br&gt;
Enterprise-grade REST + OpenAPI docs&lt;/p&gt;

&lt;p&gt;Async performance for concurrent agents&lt;/p&gt;

&lt;p&gt;Pydantic type-safety &amp;amp; contract enforcement&lt;/p&gt;

&lt;p&gt;Scales for high-volume procurement flows&lt;/p&gt;

&lt;p&gt;Easy enterprise integrations&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ngrok (global access)&lt;/strong&gt;&lt;br&gt;
Instant public URL to local server (no cloud bill)&lt;/p&gt;

&lt;p&gt;HTTPS by default&lt;/p&gt;

&lt;p&gt;Stakeholders can see the real system, live&lt;/p&gt;

&lt;p&gt;Strategy (multi-tier)&lt;/p&gt;

&lt;p&gt;🏢 FastAPI: complex multi-agent workflows + full LLM processing&lt;/p&gt;

&lt;p&gt;🌐 ngrok: tunnel for real-time judge access&lt;/p&gt;

&lt;p&gt;🚀 Pure-Python demo: zero deps, runs anywhere&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where ACE lives in the code&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hierarchical budgets — src/context/budget_config.py&lt;/p&gt;

&lt;p&gt;@dataclass&lt;br&gt;
class ContextBudgetConfig:&lt;br&gt;
    gpc_percentage=0.25; dsc_percentage=0.25&lt;br&gt;
    tsc_percentage=0.40; etc_percentage=0.10&lt;/p&gt;

&lt;p&gt;Dynamic pruning — src/context/context_manager.py&lt;/p&gt;

&lt;h1&gt;
  
  
  ETC → TSC → DSC → GPC (GPC is pinned)
&lt;/h1&gt;

&lt;p&gt;def prune_context(...): ...&lt;br&gt;
def build_context(agent_type, request): ...&lt;/p&gt;

&lt;p&gt;TSC uses rolling summaries; DSC preserves key strategy.&lt;/p&gt;

&lt;p&gt;Token accounting — src/context/token_counter.py&lt;br&gt;
Budget checks before/after pruning; every layer tracks usage.&lt;/p&gt;

&lt;p&gt;GPC protection — src/context/gpc_manager.py&lt;/p&gt;

&lt;p&gt;def is_gpc_pinned(): return True&lt;/p&gt;

&lt;p&gt;Even under extreme pressure, GPC survives.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In practice:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Negotiation: GPC blocks prohibited terms; DSC adds category strategy; TSC recalls prior rounds; ETC injects current quotes.&lt;/p&gt;

&lt;p&gt;Compliance: GPC enforces legal rules; the critic auto-repairs risky clauses.&lt;/p&gt;

&lt;p&gt;Forecast: GPC budget thresholds override optimistic local forecasts.&lt;/p&gt;

&lt;p&gt;**Net effect: **Kiro moved me from “prompt until it works” to engineering by contract—small specs, reusable hooks, measurable alignment—delivered via FastAPI + ngrok and grounded by ACE so the system is enterprise-first by construction.&lt;/p&gt;

</description>
      <category>hookedonkiro</category>
      <category>kiro</category>
    </item>
  </channel>
</rss>
