Without a canonical source of context about the business they support, agents produce generic work and drift as the business changes.
The solution is a file that grounds every chat and agent in the same core context and links to other files for domain-specific context.
An org-wide shared skill allows agents and chats to read and use the linked file system.
Scheduled agents keep the system current by auditing internal docs, dashboards, and the web, with a human approving updates before they become company-wide context.
Why build a context system for marketing agents
A context system for marketing agents is one maintained source of truth about your business — the company, the products, the ICP, the pipeline, the live campaigns — that every chat and agent reads before it does any work. It's what makes agents produce outputs you can actually use.
Marketing teams are usually provided with access to an agent harness (like Claude). They can fire prompts and build agents.
But they are not provided with a way to equip their chats and agents with context about the company they are doing marketing for.
This is inconvenient but somewhat solvable with chat sessions; users can provide context in their chat sessions manually or iterate on (endless) follow-ups.
For an agent, this means its performance will suffer unless it is provided structured and relevant context. And importantly, its performance will degrade if the context it uses is not updated over time.
The solution is having one robust, single source of truth for context relevant to marketing and a system that provides it to marketers, their agents, and keeps it up to date.
Marketing should own this business context. They are closest to the market and already keep this knowledge. A marketing engineer should build the system that provides it to the company’s AI tools.
Start with an indexed master file
All agents should be uniformly grounded in the same core context about the business they are supporting.
Agents supporting different channels or business units are going to require specific context about that area to be successful.
But having all your chats and agents read all the context you can provide will bloat their context windows and hurt performance.
The simple solution is to have one canonical ‘index’ file that contains:
- Core information about the company, its products, and ICP.
- Links to other files with task-specific context like competitive landscapes, event calendars, how-to guides for pulling data, and links to core internal docs.
I usually default to building this in Slack Canvas because Slack is usually connected to all the various harnesses and GTM tools agents run on and use. Companies using markdown-native tools like Notion or Airtable may default there.
Roll out an org-wide skill
A skill file can be created that instructs chat sessions and agents to read the index to get uniformly grounded and then read the other files they may need.
An important step is getting the context system into the chat sessions individual team members use.
I usually make sure the organization I’m supporting has skill sharing on in their enterprise Claude and / or Codex accounts and then have team members install shared skills I publish. That way the whole org is using the same context, and I can make changes afterward if needed.
Keep context up to date with scheduled agents
Partnerships, events, sales pipeline updates, and site traffic trends all become stale fast.
Keeping these context files up to date is the step most teams skip.
This is where I end up investing most of my time when building this system with clients.
Context for marketing agents needs to be current.
For individual chat sessions, staleness is expected and can be managed by savvy users.
For agents, stale context can result in poor or incorrect outputs. For example, I have an agent for a client that analyzes weekly site traffic trends and produces an insights report; the agent has context about things like the team’s weekly events and partner announcements that drastically improve its performance.
I usually build a Claude Code slash command that spawns subagents that:
- Read specific internal documents (core team meeting notes, pipeline updates, etc.)
- Pull recent numbers from specific dashboards (latest site visitors, revenue projection, etc.)
- Conduct a web search on relevant topics, competitors, and partners for recent news.
Those subagents then compare their findings to specific context files and make updates after a human approval gate.
The subagent structure prevents context rot from one agent reading all docs and needs to be dialed in based on the number and size of context files and internal data.
The human approval gate prevents incorrect updates from being written to files used by the whole company. And can similarly be adjusted to auto-update high-confidence updates.
How to start
Work through these questions and then start building:
- Audit the team’s current use of tools - where does it make sense to publish the context and skill files?
- Audit the team’s GTM motions and current use of AI for marketing - what types of context are needed now? What’s needed later?
- Audit the team’s operating spine of documentation - what are the core docs that should be reviewed to make context updates over time?