The NIST AI Risk Management Framework
AI governance provides a structure to manage the risks of AI implementation. This article discusses the NIST AI Risk Management Framework (AI RMF).
Large Language Models (LLMs) like Claude and Copilot are transforming the development lifecycle. They are no longer just auto-completing code; they're generating features, debugging complex issues, and even performing code reviews. But there’s a secret to unlocking this power, and it goes far beyond a simple prompt: Context Engineering.
In Part 1 of this series, we explored the fundamentals of guiding AI with context.
Now, in Part 2, we’re diving into the specific patterns that development teams are using right now. These are the techniques that turn a simple AI assistant into a deeply integrated, highly effective development partner. The core challenge is this: how do we give an AI tool enough information to be helpful without drowning its context window in noise? The answer is not to dump everything into the prompt, but to engineer structured, layered, and timely context.
Let's look at the patterns that make AI a true extension of your engineering team, starting with how to teach the AI what to build from a robust set of requirements.
Spec-Driven Development: Context from Requirements
Spec-driven development (SDD) is gaining traction because it aligns well with how AI tools typically operate (especially in codebases). Instead of describing what we want in natural language, we provide structured specifications that serve as both documentation and AI context.
The “spec” pattern:
This works because specs provide dense, structured context. A good spec tells the AI not just what to build, but how it fits into your system, what patterns to follow, what to avoid.
Instead of explaining your architecture every time, create workspace context files that AI tools can reference. Think of these as "onboarding docs for AI developers."
Create an .ai-context/ directory with:
Modern tools like Claude Code and Cursor can read these files as foundational context. When you ask them to add a feature, they reference your conventions automatically.
AI Tools Read Context From:
↓
.ai-context/ → Base understanding of project
specs/ → Feature requirements
docs/adr/ → Historical decisions
src/ → Actual implementation
Progressive Context: Start Small, Expand as Needed
One of the biggest context engineering mistakes is to attempt to give the AI agent everything upfront. This can overwhelm the context window with noise making it hard to find the truly important “signal” of context through the noise.
Better approach: start with minimal context and let the AI ask for more. The AI progressively builds context by exploring your codebase, not by having everything dumped in advance. This matches how human developers naturally tend to work also.
Context grows organically based on need, not dumped upfront.
Not all code is equally relevant. Good context engineering means helping AI tools understand context by placing appropriate boundaries or placing asymmetric importance.
Example: Use project structure to signal importance
Tips for Context Constraints:
This teaches AI tools to focus on what matters and skip noise. Claude Code in particular respects workspace configuration to avoid polluting context with irrelevant files.
Before you write any code, set up context that makes AI tools more effective:
Then when you start coding with an Agentic tool, point it to the latest spec and allow exploration and context localization.
When debugging with AI assistance, context needs to shift from "how things should work" to "what's actually happening."
Provide diagnostic context:
Modern AI tools are often better at debugging with the right diagnostic context. Instead of just saying "it's broken"—show them the failure mode.
Debugging Context Checklist:
Example: Good Debugging Context
"The authentication endpoint returns 500 after commit abc123.
Error: 'Cannot read property userId of undefined' in auth.js:42.
This started after adding the password reset feature.
Logs show the JWT token is missing the userId claim.
Expected: Should extract userId from token.
Tried: Verified token generation, it includes userId there."
For refactoring work, historical context matters. Help AI tools understand:
For example, Claude Code and Github Copilot can read git history to understand code evolution. Use this by referencing commits or branches that show previous refactoring attempts.
When using AI to help with code reviews, context also comes from your team's standards:
Create a `code-review-checklist.md` that AI tools can reference when reviewing PRs. This gives them the same lens your human reviewers use.
Wrapping Up
We’ve moved far beyond the initial days of "Prompt Engineering," where the goal was to write one perfect, magical sentence.
Today, the frontier is Context Engineering, which treats the AI’s input not as a single command, but as a dynamic, layered, and architectural component of the project. By adopting patterns like Spec-Driven Development, creating a comprehensive .ai-context/ workspace for foundational knowledge, and leveraging diagnostic context for debugging, you’re not just using AI; you’re integrating it as an essential, knowledgeable member of your team.
The future of software development involves structuring your project not only for human readability but also for AI comprehension. This deliberate effort to manage what the AI sees, when it sees it, and what it should focus on is what separates the effective AI-augmented developer from the rest.
In the next and final part of this series, we will focus on one of the biggest pitfalls: context engineering mistakes. We'll cover how to avoid overwhelming the AI, what to exclude, and how to maintain quality over quantity to ensure your AI agent delivers high-signal, high-quality code every time.
Ascendient Learning, part of Accenture, offers private, customized Generative AI training across all teams within your organization from leaders, to developers, to staff (including all levels and departments). Contact us to speak with one of our AI learning specialists.
Ascendient Learning is the coming together of three highly respected brands; Accelebrate, ExitCertified, and Web Age Solutions - renowned for their training expertise - to form one company committed to providing excellence in outcomes-based technical training.
With our winning team, we provide a full suite of customizable training to help organizations and teams upskill, reskill, and meet the growing demand for technical development because we believe that when talent meets drive, individuals rise, and businesses thrive.