Skip to content

Commit cbac9d5

Browse files
Reorganize AI context (CONTEXT.md -> AGENTS.md)
1 parent 7def361 commit cbac9d5

File tree

9 files changed

+69
-70
lines changed

9 files changed

+69
-70
lines changed
Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13875,21 +13875,21 @@ Atomically generated smart tag with value "VarName".
1387513875
</blockquote></details>
1387613876

1387713877

13878-
<details><summary>Field SpecialBinding</summary><blockquote>
13878+
<details><summary>Field Overrider</summary><blockquote>
1387913879

13880-
Atomically generated smart tag with value "SpecialBinding".
13880+
Atomically generated smart tag with value "Overrider".
1388113881
It's used for:
1388213882

13883-
class _Generator__BindingBuilder_ <-- _IIdGenerator_(SpecialBinding) -- _IdGenerator_ as _PerResolve_
13883+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
1388413884
</blockquote></details>
1388513885

1388613886

13887-
<details><summary>Field CompositionClass</summary><blockquote>
13887+
<details><summary>Field Cleaner</summary><blockquote>
1388813888

13889-
Atomically generated smart tag with value "CompositionClass".
13889+
Atomically generated smart tag with value "Cleaner".
1389013890
It's used for:
1389113891

13892-
class _Generator__CodeBuilder_ <-- _IBuilder{TData, T}_(CompositionClass) -- _CompositionClassBuilder_ as _PerBlock_
13892+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Cleaner) -- _GraphCleaner_ as _PerBlock_
1389313893
</blockquote></details>
1389413894

1389513895

@@ -13902,30 +13902,30 @@ Atomically generated smart tag with value "UniqueTag".
1390213902
</blockquote></details>
1390313903

1390413904

13905-
<details><summary>Field Overrider</summary><blockquote>
13905+
<details><summary>Field Override</summary><blockquote>
1390613906

13907-
Atomically generated smart tag with value "Overrider".
13907+
Atomically generated smart tag with value "Override".
1390813908
It's used for:
1390913909

13910-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
13910+
class _Generator__OverrideIdProvider_ <-- _IIdGenerator_(Override) -- _IdGenerator_ as _PerResolve_
1391113911
</blockquote></details>
1391213912

1391313913

13914-
<details><summary>Field Override</summary><blockquote>
13914+
<details><summary>Field SpecialBinding</summary><blockquote>
1391513915

13916-
Atomically generated smart tag with value "Override".
13916+
Atomically generated smart tag with value "SpecialBinding".
1391713917
It's used for:
1391813918

13919-
class _Generator__OverrideIdProvider_ <-- _IIdGenerator_(Override) -- _IdGenerator_ as _PerResolve_
13919+
class _Generator__BindingBuilder_ <-- _IIdGenerator_(SpecialBinding) -- _IdGenerator_ as _PerResolve_
1392013920
</blockquote></details>
1392113921

1392213922

13923-
<details><summary>Field Cleaner</summary><blockquote>
13923+
<details><summary>Field CompositionClass</summary><blockquote>
1392413924

13925-
Atomically generated smart tag with value "Cleaner".
13925+
Atomically generated smart tag with value "CompositionClass".
1392613926
It's used for:
1392713927

13928-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Cleaner) -- _GraphCleaner_ as _PerBlock_
13928+
class _Generator__CodeBuilder_ <-- _IBuilder{TData, T}_(CompositionClass) -- _CompositionClassBuilder_ as _PerBlock_
1392913929
</blockquote></details>
1393013930

1393113931

File renamed without changes.
File renamed without changes.

Pure.DI.sln

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ EndProject
5959
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "readme", "readme", "{24E44980-FC88-4DA1-A2D2-C45296AF7D63}"
6060
ProjectSection(SolutionItems) = preProject
6161
readme\ReadmeTemplate.md = readme\ReadmeTemplate.md
62-
README.md = README.md
6362
readme\FooterTemplate.md = readme\FooterTemplate.md
6463
docs\README.md = docs\README.md
6564
readme\ConsolePageTemplate.md = readme\ConsolePageTemplate.md

README.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3954,21 +3954,21 @@ Atomically generated smart tag with value "VarName".
39543954
</blockquote></details>
39553955

39563956

3957-
<details><summary>Field SpecialBinding</summary><blockquote>
3957+
<details><summary>Field Overrider</summary><blockquote>
39583958

3959-
Atomically generated smart tag with value "SpecialBinding".
3959+
Atomically generated smart tag with value "Overrider".
39603960
It's used for:
39613961

3962-
class _Generator__BindingBuilder_ <-- _IIdGenerator_(SpecialBinding) -- _IdGenerator_ as _PerResolve_
3962+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
39633963
</blockquote></details>
39643964

39653965

3966-
<details><summary>Field CompositionClass</summary><blockquote>
3966+
<details><summary>Field Cleaner</summary><blockquote>
39673967

3968-
Atomically generated smart tag with value "CompositionClass".
3968+
Atomically generated smart tag with value "Cleaner".
39693969
It's used for:
39703970

3971-
class _Generator__CodeBuilder_ <-- _IBuilder{TData, T}_(CompositionClass) -- _CompositionClassBuilder_ as _PerBlock_
3971+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Cleaner) -- _GraphCleaner_ as _PerBlock_
39723972
</blockquote></details>
39733973

39743974

@@ -3981,30 +3981,30 @@ Atomically generated smart tag with value "UniqueTag".
39813981
</blockquote></details>
39823982

39833983

3984-
<details><summary>Field Overrider</summary><blockquote>
3984+
<details><summary>Field Override</summary><blockquote>
39853985

3986-
Atomically generated smart tag with value "Overrider".
3986+
Atomically generated smart tag with value "Override".
39873987
It's used for:
39883988

3989-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
3989+
class _Generator__OverrideIdProvider_ <-- _IIdGenerator_(Override) -- _IdGenerator_ as _PerResolve_
39903990
</blockquote></details>
39913991

39923992

3993-
<details><summary>Field Override</summary><blockquote>
3993+
<details><summary>Field SpecialBinding</summary><blockquote>
39943994

3995-
Atomically generated smart tag with value "Override".
3995+
Atomically generated smart tag with value "SpecialBinding".
39963996
It's used for:
39973997

3998-
class _Generator__OverrideIdProvider_ <-- _IIdGenerator_(Override) -- _IdGenerator_ as _PerResolve_
3998+
class _Generator__BindingBuilder_ <-- _IIdGenerator_(SpecialBinding) -- _IdGenerator_ as _PerResolve_
39993999
</blockquote></details>
40004000

40014001

4002-
<details><summary>Field Cleaner</summary><blockquote>
4002+
<details><summary>Field CompositionClass</summary><blockquote>
40034003

4004-
Atomically generated smart tag with value "Cleaner".
4004+
Atomically generated smart tag with value "CompositionClass".
40054005
It's used for:
40064006

4007-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Cleaner) -- _GraphCleaner_ as _PerBlock_
4007+
class _Generator__CodeBuilder_ <-- _IBuilder{TData, T}_(CompositionClass) -- _CompositionClassBuilder_ as _PerBlock_
40084008
</blockquote></details>
40094009

40104010

@@ -6389,13 +6389,13 @@ alt="DotNext Pure.DI" width="640" border="10"/></a>
63896389

63906390
AI needs to understand the situation it’s in (context). This means knowing details like API, usage scenarios, etc. This helps the AI give more relevant and personalized responses. So Markdown docs below can be useful if you or your team rely on an AI assistant to write code using Pure.DI:
63916391

6392-
| AI Context file | Size | Tokens |
6392+
| AI context file | Size | Tokens |
63936393
| --------------- | ---- | ------ |
6394-
| [AI_CONTEXT_SMALL.md](AI_CONTEXT_SMALL.md) | 33KB | 8K |
6395-
| [AI_CONTEXT_MEDIUM.md](AI_CONTEXT_MEDIUM.md) | 119KB | 30K |
6396-
| [AI_CONTEXT_LARGE.md](AI_CONTEXT_LARGE.md) | 449KB | 115K |
6394+
| [AGENTS_SMALL.md](AGENTS_SMALL.md) | 33KB | 8K |
6395+
| [AGENTS_MEDIUM.md](AGENTS_MEDIUM.md) | 119KB | 30K |
6396+
| [AGENTS.md](AGENTS.md) | 449KB | 115K |
63976397

6398-
For use with JetBrains Rider and Junie, please refer to [these instructions](https://www.jetbrains.com/help/junie/customize-guidelines.html). For example, you can copy any `AI_CONTEXT_size.md` file into your project (where Pure.DI is used) as a `.junie/guidelines.md` file.
6398+
For different IDEs, you can use the _AGENTS.md_ file as is by simply copying it to the root directory. For use with _JetBrains Rider_ and _Junie_, please refer to [these instructions](https://www.jetbrains.com/help/junie/customize-guidelines.html). For example, you can copy any _AGENTS.md_ file into your project (using _Pure.DI_) as _.junie/guidelines.md._
63996399
## How to contribute to Pure.DI
64006400

64016401
Thank you for your interest in contributing to the Pure.DI project! First of all, if you are going to make a big change or feature, please open a problem first. That way, we can coordinate and understand if the change you're going to work on fits with current priorities and if we can commit to reviewing and merging it within a reasonable timeframe. We don't want you to waste a lot of your valuable time on something that may not align with what we want for Pure.DI.

build/Core/Targets/AIContextTarget.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class AIContextTarget(
2121
{
2222
private const long AITokenSizeBytes = 4;
2323
private const string ReadmeDir = "readme";
24-
private const string AiContextReadmeFileTemplate = "AI_CONTEXT_{0}.md";
24+
private const string AiContextReadmeFileName = "AGENTS";
2525

2626
public Task InitializeAsync(CancellationToken cancellationToken) => commands.RegisterAsync(
2727
this, "Generate AI context", "ai");
@@ -31,7 +31,7 @@ public async Task<AIContext> RunAsync(CancellationToken cancellationToken)
3131
var examples = await createExamplesTarget.RunAsync(cancellationToken);
3232
var aiContextFileTasks = Enum.GetValues<AIContextSize>()
3333
.Select(size => CreateAiContextFile(
34-
string.Format(AiContextReadmeFileTemplate, size.ToString().ToUpperInvariant()),
34+
$"{AiContextReadmeFileName}{(size == AIContextSize.Large ? "" : "_" + size.ToString().ToUpperInvariant())}.md",
3535
examples,
3636
size,
3737
cancellationToken));

build/Core/Targets/ReadmeTarget.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ private async Task AddAIContextAsync(StreamWriter writer, CancellationToken canc
110110
await writer.WriteLineAsync();
111111
await writer.WriteLineAsync("AI needs to understand the situation it’s in (context). This means knowing details like API, usage scenarios, etc. This helps the AI give more relevant and personalized responses. So Markdown docs below can be useful if you or your team rely on an AI assistant to write code using Pure.DI:");
112112
await writer.WriteLineAsync();
113-
await writer.WriteLineAsync("| AI Context file | Size | Tokens |");
113+
await writer.WriteLineAsync("| AI context file | Size | Tokens |");
114114
await writer.WriteLineAsync("| --------------- | ---- | ------ |");
115115
var aiContext = await aiContextTarget.RunAsync(cancellationToken);
116116
foreach (var aiContextFile in aiContext.Files)
@@ -120,7 +120,7 @@ private async Task AddAIContextAsync(StreamWriter writer, CancellationToken canc
120120
}
121121

122122
await writer.WriteLineAsync();
123-
await writer.WriteLineAsync("For use with JetBrains Rider and Junie, please refer to [these instructions](https://www.jetbrains.com/help/junie/customize-guidelines.html). For example, you can copy any `AI_CONTEXT_size.md` file into your project (where Pure.DI is used) as a `.junie/guidelines.md` file.");
123+
await writer.WriteLineAsync("For different IDEs, you can use the _AGENTS.md_ file as is by simply copying it to the root directory. For use with _JetBrains Rider_ and _Junie_, please refer to [these instructions](https://www.jetbrains.com/help/junie/customize-guidelines.html). For example, you can copy any _AGENTS.md_ file into your project (using _Pure.DI_) as _.junie/guidelines.md._");
124124
}
125125

126126
private async Task AddContributingAsync(StreamWriter writer)

src/Pure.DI.Templates/Templates/Pure.DI.Template.ClassLibrary/.junie/guidelines.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13857,15 +13857,6 @@ DI.Setup("Composition")
1385713857
</blockquote></details>
1385813858

1385913859

13860-
<details><summary>Field VarName</summary><blockquote>
13861-
13862-
Atomically generated smart tag with value "VarName".
13863-
It's used for:
13864-
13865-
class _Generator__VarsMap_ <-- _IIdGenerator_(VarName) -- _IdGenerator_ as _Transient_
13866-
</blockquote></details>
13867-
13868-
1386913860
<details><summary>Field UsingDeclarations</summary><blockquote>
1387013861

1387113862
Atomically generated smart tag with value "UsingDeclarations".
@@ -13875,12 +13866,12 @@ Atomically generated smart tag with value "UsingDeclarations".
1387513866
</blockquote></details>
1387613867

1387713868

13878-
<details><summary>Field UniqueTag</summary><blockquote>
13869+
<details><summary>Field VarName</summary><blockquote>
1387913870

13880-
Atomically generated smart tag with value "UniqueTag".
13871+
Atomically generated smart tag with value "VarName".
1388113872
It's used for:
1388213873

13883-
class _Generator__ApiInvocationProcessor_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve__BindingBuilder_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve_
13874+
class _Generator__VarsMap_ <-- _IIdGenerator_(VarName) -- _IdGenerator_ as _Transient_
1388413875
</blockquote></details>
1388513876

1388613877

@@ -13893,6 +13884,15 @@ Atomically generated smart tag with value "Cleaner".
1389313884
</blockquote></details>
1389413885

1389513886

13887+
<details><summary>Field Overrider</summary><blockquote>
13888+
13889+
Atomically generated smart tag with value "Overrider".
13890+
It's used for:
13891+
13892+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
13893+
</blockquote></details>
13894+
13895+
1389613896
<details><summary>Field Override</summary><blockquote>
1389713897

1389813898
Atomically generated smart tag with value "Override".
@@ -13911,12 +13911,12 @@ Atomically generated smart tag with value "CompositionClass".
1391113911
</blockquote></details>
1391213912

1391313913

13914-
<details><summary>Field Overrider</summary><blockquote>
13914+
<details><summary>Field UniqueTag</summary><blockquote>
1391513915

13916-
Atomically generated smart tag with value "Overrider".
13916+
Atomically generated smart tag with value "UniqueTag".
1391713917
It's used for:
1391813918

13919-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
13919+
class _Generator__ApiInvocationProcessor_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve__BindingBuilder_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve_
1392013920
</blockquote></details>
1392113921

1392213922

src/Pure.DI.Templates/Templates/Pure.DI.Template.ConsoleApp/.junie/guidelines.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13857,15 +13857,6 @@ DI.Setup("Composition")
1385713857
</blockquote></details>
1385813858

1385913859

13860-
<details><summary>Field VarName</summary><blockquote>
13861-
13862-
Atomically generated smart tag with value "VarName".
13863-
It's used for:
13864-
13865-
class _Generator__VarsMap_ <-- _IIdGenerator_(VarName) -- _IdGenerator_ as _Transient_
13866-
</blockquote></details>
13867-
13868-
1386913860
<details><summary>Field UsingDeclarations</summary><blockquote>
1387013861

1387113862
Atomically generated smart tag with value "UsingDeclarations".
@@ -13875,12 +13866,12 @@ Atomically generated smart tag with value "UsingDeclarations".
1387513866
</blockquote></details>
1387613867

1387713868

13878-
<details><summary>Field UniqueTag</summary><blockquote>
13869+
<details><summary>Field VarName</summary><blockquote>
1387913870

13880-
Atomically generated smart tag with value "UniqueTag".
13871+
Atomically generated smart tag with value "VarName".
1388113872
It's used for:
1388213873

13883-
class _Generator__ApiInvocationProcessor_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve__BindingBuilder_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve_
13874+
class _Generator__VarsMap_ <-- _IIdGenerator_(VarName) -- _IdGenerator_ as _Transient_
1388413875
</blockquote></details>
1388513876

1388613877

@@ -13893,6 +13884,15 @@ Atomically generated smart tag with value "Cleaner".
1389313884
</blockquote></details>
1389413885

1389513886

13887+
<details><summary>Field Overrider</summary><blockquote>
13888+
13889+
Atomically generated smart tag with value "Overrider".
13890+
It's used for:
13891+
13892+
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
13893+
</blockquote></details>
13894+
13895+
1389613896
<details><summary>Field Override</summary><blockquote>
1389713897

1389813898
Atomically generated smart tag with value "Override".
@@ -13911,12 +13911,12 @@ Atomically generated smart tag with value "CompositionClass".
1391113911
</blockquote></details>
1391213912

1391313913

13914-
<details><summary>Field Overrider</summary><blockquote>
13914+
<details><summary>Field UniqueTag</summary><blockquote>
1391513915

13916-
Atomically generated smart tag with value "Overrider".
13916+
Atomically generated smart tag with value "UniqueTag".
1391713917
It's used for:
1391813918

13919-
class _Generator__DependencyGraphBuilder_ <-- _IGraphRewriter_(Overrider) -- _GraphOverrider_ as _PerBlock_
13919+
class _Generator__ApiInvocationProcessor_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve__BindingBuilder_ <-- _IIdGenerator_(UniqueTag) -- _IdGenerator_ as _PerResolve_
1392013920
</blockquote></details>
1392113921

1392213922

0 commit comments

Comments
 (0)