diff --git a/AGENTS.md b/AGENTS.md
new file mode 100644
index 0000000..b81018a
--- /dev/null
+++ b/AGENTS.md
@@ -0,0 +1,153 @@
+# Agent Guidelines for this Repository
+
+> **Important**: This file is the source of truth for all agents working in this repository. If you modify the build process, add new tools, change the architecture, or introduce new conventions, **you must update this file** to reflect those changes.
+
+## 1. Project Overview & Commands
+
+This is an **Astro** project using **pnpm**.
+
+### Build & Run Commands
+- **Install Dependencies**: `pnpm install`
+- **Development Server**: `pnpm dev`
+- **Build for Production**: `pnpm build` (Output: `dist/`)
+- **Preview Production Build**: `pnpm preview`
+- **Check Types**: `npx tsc --noEmit` (since `strict` is enabled)
+
+### Testing & Linting
+- **Linting**: No explicit lint command found in `package.json`. Follow existing code style strictly.
+- **Testing**: No explicit test framework (Jest/Vitest) is currently configured.
+ - *If asked to add tests*: Verify if a test runner needs to be installed first.
+
+## 2. Directory Structure
+
+```text
+/
+├── public/ # Static assets
+├── src/
+│ ├── assets/ # Source assets (processed by Astro)
+│ ├── components/ # Astro components
+│ │ ├── base/ # UI Primitives
+│ │ └── page/ # Layout-specific components (Header, Footer)
+│ ├── content/ # Markdown/MDX content collections
+│ │ ├── posts/
+│ │ ├── experiences/
+│ │ └── skills/
+│ ├── data/ # Data access layer (Classes & Utilities)
+│ ├── layouts/ # Page layouts (if any)
+│ ├── pages/ # File-based routing
+│ ├── styles/ # Global styles (if any)
+│ └── utils/ # Helper functions
+├── astro.config.ts # Astro configuration
+├── package.json # Dependencies & Scripts
+└── tsconfig.json # TypeScript configuration
+```
+
+## 3. Code Style & Conventions
+
+### General Formatting
+- **Indentation**: 2 spaces.
+- **Semicolons**: **Preferred**. While mixed in some older files, new code should use semicolons.
+- **Quotes**:
+ - **Code**: Single quotes `'string'`.
+ - **Imports**: Double quotes `"package"` or single quotes `'./file'` (mixed, generally follow file context).
+ - **JSX/Attributes**: Double quotes `