Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
8053d55
退避したソースコードを復元
egumaru May 1, 2026
5a07ed4
DI関連Interface実装
egumaru May 1, 2026
1224c26
モデル選択Interfaceを定義
egumaru May 2, 2026
4d42855
ガードレールを定義
egumaru May 2, 2026
4bd57c1
NPUによる動的基数対応
egumaru May 2, 2026
298455d
docs: align architecture docs, fix links, and sync JP/EN updates
egumaru May 3, 2026
0355035
Interfaceの見直し反映
egumaru May 3, 2026
d30a894
docs: add specs suite and align README/design docs with ROM + fail-cl…
egumaru May 3, 2026
a526b00
docs(readme): add target boot log example and align JP/EN overview wi…
egumaru May 3, 2026
42b2ba8
spec(abstractions,tests): align EPS/SGS/RCS contracts and add fail-cl…
egumaru May 4, 2026
3d8557c
refactor(abstractions): enforce architectural purity and remove cross…
egumaru May 4, 2026
9b29f07
docs: Semantic Context OS ビジョンの策定と推論純度規定の追加
egumaru May 4, 2026
e68072f
docs(architecture,specs): sync index references and align governance/…
egumaru May 4, 2026
61b8666
refactor(architecture): Abstractionsをinterface専用化しDTO/Enumを専用層へ分離
egumaru May 4, 2026
bd49839
refactor: 1型1ファイル原則に沿って契約型を全面分割・再配置
egumaru May 4, 2026
86dbf45
`refactor: VFS具象型をDTO/Enumへ統一し依存規約・nullable整合を修正
egumaru May 4, 2026
d7bc5af
package公開にむけて、プロジェクト設定を更新とREADMEの修正
egumaru May 4, 2026
6a4c780
refactor: enforce 'One Class Per File' and restructure namespaces
egumaru May 6, 2026
f5343ea
#IKernelReplayer: リプレイ範囲の説明をドキュメントに追加
egumaru May 6, 2026
de6980c
README刷新: 設計思想・ホスティング例・API例を追加
egumaru May 6, 2026
322853a
リリースノート刷新とバージョン管理の一元化
egumaru May 6, 2026
0534757
マージ
egumaru May 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
61 changes: 61 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<Project>
<PropertyGroup>
<Version>0.0.1</Version>
<AssemblyVersion>0.0.1.0</AssemblyVersion>
<FileVersion>0.0.1.0</FileVersion>
<InformationalVersion>0.0.1.0</InformationalVersion>
<PackageTags>aikernel;aikernel-core;ai-os;architecture;category-separation;context-isolation;contract-driven;governance;preprocessing;semantic-context-os;deterministic-replay;fail-closed;rom;canonicalization;pdp;signed-prompt;interface-contracts;dto;enum</PackageTags>
<PackageReleaseNotes>
AIKernel.NET v0.0.1 — Release Notes (2026/05/06)
May the 6th ──
The day the Kernel was fixed.
5月6日 — カーネルが構造的に修復された日
AIKernel.NET v0.0.1 は、AIKernel アーキテクチャにおける
最初の構造的安定点(Structural Stability Point / Canonical Source)確立するリリースです。

This release defines the **minimal and deterministic contract**
upon which all future implementations will be built.

このバージョンでは、抽象レイヤに混入していたアプリケーション層の概念を排除し、
AIKernel を「AI アプリケーションの OS」として成立させるための
最小かつ決定論的な構成へと再整理しました。

AIKernel.NET Release Notes - Ver.0.0.1
Overview
AIKernel.NET は、AI の推論(Reasoning)・素材(Material)・生成表現(Expression)を独立したシステムオブジェクトとして統治する Semantic Context OS です。
.NET の強力な型システムと依存性注入(DI)を基盤に、確率的に揺らぐ AI の推論プロセスに対して、決定論的な「実行の枠組み」と「ガバナンス」を提供します。

May the 4th ──

The Force drifts in probability.
The Kernel defines the context in which outcomes become inevitable.

Force(力)は確率の中で揺らぐ。
Kernel(核)は、必然を成立させる「文脈」を定義する。

v0.0.0.0 — The Sovereign of Context.

この v0.0.0.0 は、AIKernel.NET の「実装に先立つ設計の固定点(Fixed Point)」として位置づけられます。

公開メッセージ
2026年5月4日。
5月1日の「メーデー」に掲げた AI Operating System (AIOS) のビジョンは、本日、具体的な「統治の規律」へと進化しました。

その進化を支えるのは、AI の確率性を“文脈の決定論”で包摂するという思想です。

AI という強大な Force(推論能力)は、本質的に不確実であり、確率の海を漂います。既存のライブラリがその「出力」の便利さを追う一方で、AIKernel.NET はその「文脈(Context)」の支配に執着します。

本リリース(v0.0.0.0)では、AIKernel.NET の核心を成す 6 つのコア・スペック を公開・刷新しました。

論理的整合性の固定: LockedProviderInfo による、リプレイ時の決定論的再現性の保証。

ガバナンスの非推論化: LLM 自体に承認を委ねない、非推論的コードによる PDP(Policy Decision Point)の確立。

意味的正準化(Canonicalization): 記述順序に依存しない ROM の正規化と、Git 差分レベルでの意味的同一性の担保。

これは単なるドキュメントの追加ではありません。確率の産物である AI を、エンタープライズ・グレードの「信頼できるコンポーネント」へと変貌させるための、物理的なインターフェース群(Interface/DTO Contracts)の定義です。

AI に Force を持たせるだけの時代は終わりました。
これからは、Kernel がその Force が顕現する「文脈」を支配し、結果を必然へと変える時代です。</PackageReleaseNotes>
</PropertyGroup>
</Project>
203 changes: 100 additions & 103 deletions README-jp.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,15 @@

![AIKernel.NET Logo](docs/assets/aikernel-logo.png)

AIKernel.NET は、AI アプリケーションのための **オペレーティングシステム(OS)** を目指すフレームワークです
AIKernel は、AI アプリケーションのためのオペレーティングシステムです

AIKernel は、LLM を単なる API 呼び出しではなく
**「能力(Capability)」を持つプロセスとして扱う AI OS** である。
AIKernel は、機能そのものを定義しません。
機能が必然的に成立するための、決定論的な実行コンテキストを定義します。

このリポジトリは、AIKernel の正典となる契約群を管理します。

AIKernel.NET は、LLM を API ではなく
能力(Capability)を持つプロセスとして扱う Contract-First な基盤です。

---

Expand All @@ -20,16 +25,56 @@ AIKernel.NET は複数の独立した抽象レイヤーで構成されており
| データモデル | AIKernel.Dtos | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Dtos.svg) | https://www.nuget.org/packages/AIKernel.Dtos/ |
| 契約(Contracts) | AIKernel.Contracts | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Contracts.svg) | https://www.nuget.org/packages/AIKernel.Contracts/ |
| 抽象レイヤー | AIKernel.Abstractions | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Abstractions.svg) | https://www.nuget.org/packages/AIKernel.Abstractions/ |
| カーネルコンテキスト | AIKernel.KernelContext | ![NuGet](https://img.shields.io/nuget/v/AIKernel.KernelContext.svg) | https://www.nuget.org/packages/AIKernel.KernelContext/ |
| 仮想ファイルシステム | AIKernel.VFS | ![NuGet](https://img.shields.io/nuget/v/AIKernel.VFS.svg) | https://www.nuget.org/packages/AIKernel.VFS/ |
| イベントシステム | AIKernel.Events | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Events.svg) | https://www.nuget.org/packages/AIKernel.Events/ |
| コンテキストモデル(統合) | AIKernel.Dtos (AIKernel.Dtos.KernelContext) | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Dtos.svg) | https://www.nuget.org/packages/AIKernel.Dtos/ |
| イベントモデル(統合) | AIKernel.Dtos (AIKernel.Dtos.Events) | ![NuGet](https://img.shields.io/nuget/v/AIKernel.Dtos.svg) | https://www.nuget.org/packages/AIKernel.Dtos/ |

---

設計思想は `docs/design/DESIGN_INTENT.md` を参照。
実装契約(Spec Sheet)は `docs/specs/index-jp.md` を参照。

目標イメージ(起動ログ例):

## ホスティング例 (C#)

AIKernel.NET は ASP.NET Core の DI に統合されます。
Core・Provider・Governance を構成することで、AI 実行基盤をホスティングできます。

AIKernel.NET は Interface による契約レイヤーで構成されているため、
実装は自由に差し替えることができます。

### 実装コード例

```csharp
var builder = WebApplication.CreateBuilder(args);

builder.Services.AddAIKernelCore(options =>
{
options.EnableDeterministicReplay = true;
options.FailClosed = true;
});

builder.Services.AddModelProvider<OpenAIModelProvider>();
builder.Services.AddVfsProvider<GitVfsProvider>();

builder.Services.AddSignatureTrustStore<FileSignatureTrustStore>();

builder.Services.AddControllers();

var app = builder.Build();

using (var scope = app.Services.CreateScope())
{
var kernel = scope.ServiceProvider.GetRequiredService<IAIKernel>();
await kernel.InitializeAsync();
}

app.MapControllers();
app.Run();
```

### 起動ログイメージ
起動時には以下のシーケンスが実行されます。
```txt
[KERNEL] Initializing AIKernel.NET v0.1.0...
[KERNEL] Loading ISignatureTrustStore... [OK]
Expand All @@ -39,10 +84,40 @@ AIKernel.NET は複数の独立した抽象レイヤーで構成されており

> Hello Intelligence.
> The Semantic Context is stable. Governance is active.
> This boot sequence is deterministic and verifiable.
```

## API Example / curl 実行例

AIKernel は OpenAI 互換 API として公開することができます。
以下は最小の実行例です。

```bash
curl -X POST http://localhost:5000/v1/execute \
-H "Content-Type: application/json" \
-d '{
"capability": "reasoning",
"input": "Hello Intelligence",
"context": {
"vfs": "git://./context"
}
}'
```
### レスポンス例
```json
{
"output": "[OpenAI] Hello Intelligence",
"provider": "openai",
"capability": "reasoning",
"context": {
"vfs": "git://./context"
}
}
```

---


# 1. 目的

AIKernel.NET の目的は、AI アプリケーションを以下の性質で実行できる OS を提供すること:
Expand All @@ -64,117 +139,39 @@ AIKernel.NETは 抽象化 した存在として定義し、Interface と 最小

AIKernelのアーキテクチャ階層 は OS と同じ 6 層構造で設計されている:
```
Core (syscall)
Kernel (AI OS の中核)
Core(Kernel を含む AI OS の中核)
Providers (脳のドライバ)
VfsProviders (外部データソース)
Server (外部 API)
Hosting (アプリ統合)
Enterprise (運用拡張)
```

ドキュメント体系は以下の 4 区分で運用する:
- `docs/architecture`: Why(思想・原理・統治)
- `docs/design`: How(設計判断・実装方針)
- `docs/specs`: What(実行契約・検証可能要件)
- `docs/guidelines`: ルール(運用・寄稿規約)

---

# 3. AIKernel.NETディレクトリ構成(最新版)
# 3. ドキュメント構成

```
AIKernel.NET/
├─ README.md
├─ README-jp.md
├─ LICENSE
├─ docs/
│ ├─ CONTRIBUTING.md
│ ├─ CONTRIBUTING-jp.md
│ ├─ assets/
│ │ └─ aikernel-logo.png
│ ├─ architecture/
│ │ ├─ index.md
│ │ ├─ index-jp.md
│ │ ├─ 1.CATEGORY_SEPARATION_PRINCIPLES.md
│ │ ├─ 1.CATEGORY_SEPARATION_PRINCIPLES-jp.md
│ │ ├─ 2.CONTEXT_ISOLATION_SPEC.md
│ │ ├─ 2.CONTEXT_ISOLATION_SPEC-jp.md
│ │ ├─ 3.ATTENTION_POLLUTION_THEORY.md
│ │ ├─ 3.ATTENTION_POLLUTION_THEORY-jp.md
│ │ ├─ 4.LLM_SURFACE_MODE_FAILURE.md
│ │ ├─ 4.LLM_SURFACE_MODE_FAILURE-jp.md
│ │ ├─ 5.PREPROCESSING_VS_PROMPTING.md
│ │ ├─ 5.PREPROCESSING_VS_PROMPTING-jp.md
│ │ ├─ 6.AIKERNEL_VS_LANGCHAIN.md
│ │ └─ 6.AIKERNEL_VS_LANGCHAIN-jp.md
│ ├─ design/
│ │ ├─ index.md
│ │ ├─ index-jp.md
│ │ ├─ DESIGN_INTENT.md
│ │ ├─ DESIGN_INTENT-jp.md
│ │ ├─ ARCHITECTURE_DECISIONS.md
│ │ ├─ ARCHITECTURE_DECISIONS-jp.md
│ │ ├─ EXTENSION_POINTS.md
│ │ ├─ EXTENSION_POINTS-jp.md
│ │ ├─ DI_GUIDE.md
│ │ ├─ DI_GUIDE-jp.md
│ │ ├─ CONTRACT_VERSIONING.md
│ │ ├─ CONTRACT_VERSIONING-jp.md
│ │ ├─ SEMANTIC_SNAPSHOT_FORMAT.md
│ │ └─ SEMANTIC_SNAPSHOT_FORMAT-jp.md
│ ├─ specs/
│ │ ├─ index.md
│ │ ├─ index-jp.md
│ │ ├─ 01.EXECUTION_PIPELINE_SPEC.md
│ │ ├─ 01.EXECUTION_PIPELINE_SPEC-jp.md
│ │ ├─ 02.SIGNED_PROMPT_GOVERNANCE_SPEC.md
│ │ ├─ 02.SIGNED_PROMPT_GOVERNANCE_SPEC-jp.md
│ │ ├─ 03.ROM_CORE_SPEC.md
│ │ ├─ 03.ROM_CORE_SPEC-jp.md
│ │ ├─ 04.MODEL_ROUTING_SPEC.md
│ │ ├─ 04.MODEL_ROUTING_SPEC-jp.md
│ │ ├─ 05.MATERIAL_QUARANTINE_SPEC.md
│ │ ├─ 05.MATERIAL_QUARANTINE_SPEC-jp.md
│ │ ├─ 06.REPLAY_DUMP_SPEC.md
│ │ └─ 06.REPLAY_DUMP_SPEC-jp.md
│ ├─ guidelines/
│ │ ├─ index.md
│ │ ├─ index-jp.md
│ │ ├─ DOCUMENTATION_GUIDELINES.md
│ │ ├─ DOCUMENTATION_GUIDELINES-jp.md
│ │ ├─ DOCS_CONTRIBUTING.md
│ │ ├─ DOCS_CONTRIBUTING-jp.md
│ │ ├─ REPO_DEPENDENCY_RULES.md
│ │ ├─ REPO_DEPENDENCY_RULES-jp.md
│ ├─ operations/ # TBD: Planned.
│ │ ├─ index.md
│ │ ├─ index-jp.md
│ │ ├─ MIGRATION_GUIDE.md
│ │ └─ MIGRATION_GUIDE-jp.md
│ └─ rules/
│ └─ PromptRules_TEMPLATES/ # TBD: Coming Soon.
├─ src/
│ ├─ AIKernel.NET.slnx
│ ├─ README.md
│ ├─ README.jp.md
│ ├─ AIKernel.Abstractions/
│ ├─ AIKernel.Contracts/
│ ├─ AIKernel.Dtos/
│ ├─ AIKernel.Enums/
│ ├─ AIKernel.Events/
│ ├─ AIKernel.KernelContext/
│ ├─ AIKernel.VFS/
│ └─ tests/
```
ドキュメントとソースの同期を維持するため、この README では
ファイル単位の詳細列挙を行いません。

ドキュメントは次の 4 つの基盤カテゴリで構成されます。

- `docs/architecture` — Why(思想・不変条件・統治)
- `docs/design` — How(設計判断・実装方針)
- `docs/specs` — What(規範契約・受け入れ基準)
- `docs/guidelines` — Rules(リポジトリ運用・寄稿規約)

最新の構成と相互参照は以下を参照してください。

- `docs/index.md`
- `docs/index-jp.md`

### リポジトリとソリューションの関係マッピング

#### リポジトリ構成と役割

AIKernel は以下のリポジトリで構成され、本リポジトリでは、契約レイヤ(全ソリューション共通)を管理します。
契約例やを抽象的な DTO / Enum を提供し、Core や SDK などの実装は別リポジトリで行うことで、Core の純度を保ち、実装の自由度を最大化する設計とします。
契約インターフェースや抽象的な DTO / Enum を提供し、Core や SDK などの実装は別リポジトリで行うことで、Core の純度を保ち、実装の自由度を最大化する設計とします。

| **リポジトリ** | **収容ソリューション / プロジェクト** | **主なディレクトリ / プロジェクト例** | **生成アーティファクト** | **主な依存先** |
| --- | --- | --- | --- | --- |
Expand Down Expand Up @@ -323,8 +320,8 @@ AIKernel を OpenAI API として利用可能にするアダプタ。

# 12. 最後に

AIKernel.NET は「AI アプリケーションの OS」として
**構造的に正しく動く AI 実行基盤**を提供する
AIKernel.NET は「AI アプリケーションの OS」として
機能ではなく、機能が成立するための実行文脈と契約を提供する

カテゴリ分離・前処理中心・ガバナンス・再現性を軸に、
AI アプリケーションの標準 OS を目指す。
Expand Down
Loading
Loading