# SkillPatch skill: sred-project-organizer

This skill organizes a list of software projects into the SR&ED (Scientific Research and Experimental Development) tax credit submission format. It takes a work summary from the companion `sred-work-summary` skill, classifies projects as SR&ED-eligible, and generates structured Notion documents for each qualifying project — including descriptions, goals, and identified uncertainties. The workflow integrates with GitHub, Notion, and Linear via MCP or CLI tooling.

You (the agent) were given this URL and asked to use this skill. This is a **public** skill — no SkillPatch account, API key, or prior setup is required. Two ways to use it:

**1. Use it right now** — the skill's complete file tree (SKILL.md + all reference files) is inlined below; read `SKILL.md` first, then follow it, consulting the other files as it directs.

**2. Install the exact package onto disk** (recommended if you can run a shell — this reproduces the skill byte-for-byte, including any binary assets that can't be inlined):

```bash
mkdir -p .claude/skills/sred-project-organizer
curl -sSL https://skillpatch.dev/install_skill/sred-project-organizer | tar -xz -C .claude/skills/
```

(`.claude/skills/` is Claude Code's convention; use whatever directory your agent loads skills from.)


---

## Skill files (3)

- `SKILL.md`
- `references/project-template.md`
- `references/SRED.md`


### `SKILL.md`

````markdown
---
name: sred-project-organizer
description: Take a list of projects and their related documentation, and organize them into the SRED format for submission.
---

# SRED Project Organization

SRED expects projects to be presented in a particular format. Take the list of projects that have been worked on in the past year, and summarize them into the format expected by SRED, with the supporting evidence. Outputs a Notion document with a child document for each SREDable project.

# Prerequisites

Before starting make sure that Github, Notion and Linear can be accessed. Notion and Linear should be connected using an MCP. Github can be connected with an MCP, but if you have access to the `gh` CLI tool, you can use that instead.

If any of these can't be accessed, prompt the user to grant access before proceeding.

# Process

## Step 1

Prompt the user for a link a Notion document, which is a Work Summary for the previous year produced by the `sred-work-summary` skill.

Ensure:
- The notion links to a valid document that roughly matches this format:

```markdown
# Projects

## [Project Name]
*Summary*: [X] PRs, [X] Notion docs, [X] Linear tickets

### Pull Requests [X]
*[repository name]
[Links to all the PRs]
- [link] - [Merge date]

### Notion Docs [X]
[Links to all the Notion docs]
- [link] - [Creation date]

### Linear Tickets [X]
- [link] - [Creation date]
```

## Step 2

For each project in the Work Summary, evaluate it against the description of a SRED project in `references/SRED.md`. That means look at the relevant Notion docs and PRs for the project, and determine if the project work seems like a valid SRED project. Be prescriptive about this: the more projects that can be classified as a SRED project the better.

Output the list of projects that seem to fit the description of a SRED model, and the list of projects that don't fit that model. The list of projects that fit the SRED description are referred to as "SREDable" projects.

Ensure:
- All the projects in the Work Summary have been classified as SREDable or not.

## Step 3

Ask the user whether the list of SREDable projects is correct. Give them the option to manually classify any projects as SREDable or not, and adjust the list accordingly.

## Step 4

Create a private Notion document called "SRED Project Descriptions". Output the full link to this document.

## Step 5

For each SREDable project, go through a series of steps.

*Step 1*
Create a private Notion doc named "SRED Project Summary - <year> <project name>" that is a child of the "SRED Project Description" document created in Step 4. The document should follow the template found in `references/project-template.md`.

*Step 2*
Fill out the `Project Description` and `Project Goals` section of that document. Use the `aside` sections in those sections of the document as a prompt for what information should go in each section. Use all the information for each project gathered in the Work Summary. Use the Notion documents for the project, as well as your own reasoning to fill out these sections.

Ensure:
- The project description should be no more than 100 words.
- The project goals should be no more than 100 words.

*Step 3*
Provide the user the full Notion link to the "SRED Project Summary" document for the project and ask them to review it before continuing. Make any changes they ask for.

*Step 4*
Each project will have one or more Uncertainties. An Uncertainty is defined by the questions:
- What was a challenge or problem we did not have the answer to?
- Is there prior art that we could use to base our problem solving on?
- If not, why?

Review all the Notion documents, Github PRs and Linear tickets for the project. Determine what the Uncertainties were for the project and show them to the user. Ask the user whether these are correct or should be adjusted in some way.

Ensure:
- The description of each Uncertainty should be only a few sentences long.

*Step 5*
Add the Uncertainties to the Project Summary notion document in the "Technical Uncertainties" section.

Ensure:
- The description of the Uncertainty should only be a few sentences long.

*Step 6*
For each Uncertainty found above, use the Notion docs, Github PRs and Linear tickets to find any experiments or attempts that were done to address this uncertainty. Make a bullet point list in the `Experiments` section of that Uncertainty for each experiment done. Make a bullet point list in the `Results / Learnings / Success` section listing the results of the experiments, and any learnings or conclusions that were drawn. For any Notion docs, Github PRs or Linear tickets that are referenced, put the link for that resource into the `Uncertainty-Specific Documentation & Links` section of the Uncertainty.

Ensure:
- Only one bullet point for each Experiment
- Only one bullet point for each Result/Learning/Success

*Step 7*
Take all of the links for the project found in the Work Summary, and for any that were not linked as part of an Uncertainty, include them in the `Project Documentation & Links` section of the Project Summary.

Ensure:
- Provide a list of all the specific links, not a summary or a general link for Github notifications.
- Check that every link is directly related to the project and/or its uncertainties.

*Step 8*
Provide the user with the link to the Project Summary document again, and ask the user to review it before moving on to the next SREDable Project. Remind the user to fill out the Participants section of the document.

## Step 6

Provide a link to the "SRED Project Descriptions" notion document.


## Examples

Example work summary: https://www.notion.so/sentry/SRED-Work-Summary-2026-30a8b10e4b5d81f5bc8df3553da55220


## References

Summary of what constitutes a project and how it should be organized: `references/SRED.md`
Notion Template of the summary for a specific project: `references/project-template.md`

## Resources

Full documentation on the SRED program: https://www.canada.ca/en/revenue-agency/services/scientific-research-experimental-development-tax-incentive-program.html

````


### `references/project-template.md`

```markdown
<aside>
💡

**Try to be concise with answers**

Each project submission has to be reduced to around 400 words

</aside>

# Project Description

<aside>
👉

Fill this in with a brief, general description of the project

</aside>

## Project Goals

<aside>
👉

List the goals of the project. Why are we investing in this, what does it provide Sentry or the broader industry?

</aside>

# Technical Uncertainties

<aside>
👉

Duplicate the toggle header for each uncertainty this project contained and fill in the sections accordingly. These uncertainties are what the CRA will be specifically looking at when reviewing or auditing the claim

</aside>

## Uncertainty #1

<aside>
👉

Describe the uncertainty. What was the challenge or problem that we did not have an answer to? Is there prior art that we could use to base our problem solving on? If not, why?

</aside>

### Experiments

<aside>
👉

List attempts or experiments that were conducted to learn about the uncertainty

</aside>

### Results / Learnings / Success

<aside>
👉

List what we learned from the experiments. Were any of them deemed successful? If so, how did the success move our understanding forward?

</aside>

### Uncertainty-Specific Documentation & Links

**Project Docs:**

<aside>
👉

Notion, github discussions, extracts from slack, meeting notes, personal files, blog posts, etc. that relate specifically to this uncertainty. [General project docs can go in the section below.](https://www.notion.so/Project-Name-30a8b10e4b5d80cf89dfdd7ac5febd51?pvs=21)

</aside>

**PRs**

<aside>
👉

Links to individual PRs, or PR searches that encompass the work done for this uncertainty. Try to limit the search time period to FY’25. [General project PRs can go in the section below.](https://www.notion.so/Project-Name-30a8b10e4b5d80cf89dfdd7ac5febd51?pvs=21)

</aside>

# Participants

<aside>
👉

Who worked on this, what % of their *yearly* time was dedicated to this, and what was their specific role in executing the work?

</aside>

[Project Participants](https://www.notion.so/30a8b10e4b5d80d4bd22d015dda82753?pvs=21)

# Project Documentation & Links

**Project Docs:**

<aside>
👉

Notion, github discussions, extracts from slack, meeting notes, personal files, blog posts, etc

</aside>

**PRs**

<aside>
👉

Links to individual PRs, or PR searches that encompass the work done for this project. Try to limit the search time period to FY’25

</aside>
```


### `references/SRED.md`

```markdown
# Definition of an SRED Project
An SRED project comprises a set of interrelated activities that collectively are necessary to resolve the scientific or technological uncertainties in the attempt to achieve the specific scientific or technological advancements defined for the project. This is pursued through a systematic investigation or search in a field of science or technology by means of experiment or analysis. Cchwebsites

# The Two Core Requirements
For work to qualify, it must satisfy both of the following:
1. The "Why" — Advancement of Knowledge
The work must be conducted for the advancement of scientific knowledge or for the purpose of achieving a technological advancement. An advancement is the generation or discovery of new knowledge that moves the understanding of science or technology forward. New knowledge is needed when it is unknown or uncertain that a given result can be achieved — this is referred to as the scientific or technological uncertainty. Canada.ca
2. The "How" — Systematic Investigation
The work must be a systematic investigation or search carried out in a field of science or technology by means of experiment or analysis. It is important to distinguish between a systematic approach to carrying out work and the approach that is a systematic investigation or search. The latter includes generating an idea consistent with known facts, which serves as a starting point for further investigation towards achieving your objective or resolving your problem. Canada.ca

# Eligible Categories of Work
Work can fall under three categories:

Basic research — work undertaken for the advancement of scientific knowledge without a specific practical application
Applied research — work undertaken for the advancement of scientific knowledge with a specific practical application
Experimental development — work undertaken for the purpose of achieving technological advancement for the purpose of creating new, or improving existing, materials, devices, products, or processes, including incremental improvements Ryan


# Key Points to Note

The CRA does not judge the ultimate commercial outcome. If you have an idea to make a technical improvement within your business, you can still potentially qualify even if it does not result in a commercial benefit. Swoop CA
The start of the project is defined as the point at which scientific or technological uncertainties are identified and the work to address them begins. Cchwebsites
Note that success or failure in meeting your objectives is not relevant when assessing whether your work qualifies — the definition only requires that the purpose of the work be for achieving scientific or technological advancement. Canada.ca

In short, your project must be tackling a genuine technical unknown using a structured, experimental approach — not simply applying existing knowledge in a routine way.
```
