Compare commits

...

2 Commits

6 changed files with 48 additions and 4 deletions

View File

@@ -23,6 +23,8 @@ services:
- claude-code-router:/root/.claude-code-router - claude-code-router:/root/.claude-code-router
# SSH 配置 # SSH 配置
- ssh:/root/.ssh - ssh:/root/.ssh
# 零碎文件持久化
- persist:/root/.hair-keeper-persist
environment: environment:
- NODE_ENV=development - NODE_ENV=development
- TZ=Asia/Shanghai - TZ=Asia/Shanghai
@@ -40,6 +42,12 @@ services:
memory: 4G memory: 4G
volumes: volumes:
code-server-config:
code-server-data:
claude:
claude-code-router:
ssh:
persist:
# node_modules 卷,避免主机和容器之间的文件系统差异 # node_modules 卷,避免主机和容器之间的文件系统差异
node_modules: node_modules:
# pnpm store 卷,加速依赖安装 # pnpm store 卷,加速依赖安装

View File

@@ -1,5 +1,33 @@
#!/bin/bash #!/bin/bash
# ============================================
# 文件持久化:通过符号链接将零碎文件持久化到命名卷
# ============================================
PERSIST_DIR="/root/.hair-keeper-persist"
PERSIST_FILES=(
"/root/.claude.json"
"/root/.zsh_history"
"/root/.bash_history"
)
mkdir -p "$PERSIST_DIR"
for filepath in "${PERSIST_FILES[@]}"; do
filename=$(basename "$filepath")
persist_path="$PERSIST_DIR/$filename"
# 如果原路径是真实文件(非符号链接),迁移到持久化目录
if [ -f "$filepath" ] && [ ! -L "$filepath" ]; then
mv "$filepath" "$persist_path"
fi
# 确保持久化目录中存在该文件
[ -f "$persist_path" ] || touch "$persist_path"
# 创建符号链接
ln -sf "$persist_path" "$filepath"
done
# 设置默认密码 # 设置默认密码
DEV_PASSWORD=${DEV_PASSWORD:-clouddev} DEV_PASSWORD=${DEV_PASSWORD:-clouddev}

View File

@@ -3,7 +3,7 @@
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## 项目说明 ## 项目说明
本项目模板Hair Keeper v1.2.0是一个高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑。 本项目模板Hair Keeper v1.3.0是一个高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证支持SSO单点登录、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑。
Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。 Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。
@@ -77,6 +77,8 @@ Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。
- `src/server/queues/`消息队列和worker通过其中的index.ts统一导出任务状态更新采用trpc SSE subscription接口定义在`server/routers/jobs.ts` - `src/server/queues/`消息队列和worker通过其中的index.ts统一导出任务状态更新采用trpc SSE subscription接口定义在`server/routers/jobs.ts`
- `src/server/agents`LLM的对接和使用 - `src/server/agents`LLM的对接和使用
- `src/server/service/`:服务层模块集合,封装后端业务逻辑和系统服务 - `src/server/service/`:服务层模块集合,封装后端业务逻辑和系统服务
- `src/server/service/session.ts`会话管理服务基于Redis实现权限变更后强制重新登录
- `src/server/service/iaaa.ts`:北京大学统一认证(IAAA)对接服务,通过环境变量配置即可启用
- `src/server/service/dev/`:开发模式下的辅助功能需要的后台服务 - `src/server/service/dev/`:开发模式下的辅助功能需要的后台服务
- `src/server/utils/`:服务端专用工具函数库,为后端业务逻辑提供基础设施支持 - `src/server/utils/`:服务端专用工具函数库,为后端业务逻辑提供基础设施支持
- `src/api/dev/`开发模式下的辅助功能需要的api - `src/api/dev/`开发模式下的辅助功能需要的api

View File

@@ -1,5 +1,9 @@
# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## 项目说明 ## 项目说明
本项目模板Hair Keeper v1.2.0是一个高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑。 本项目模板Hair Keeper v1.3.0是一个高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证支持SSO单点登录、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑。
Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。 Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。
@@ -73,6 +77,8 @@ Hair Keeper是个诙谐有趣的名称和项目内容毫无关系。
- `src/server/queues/`消息队列和worker通过其中的index.ts统一导出任务状态更新采用trpc SSE subscription接口定义在`server/routers/jobs.ts` - `src/server/queues/`消息队列和worker通过其中的index.ts统一导出任务状态更新采用trpc SSE subscription接口定义在`server/routers/jobs.ts`
- `src/server/agents`LLM的对接和使用 - `src/server/agents`LLM的对接和使用
- `src/server/service/`:服务层模块集合,封装后端业务逻辑和系统服务 - `src/server/service/`:服务层模块集合,封装后端业务逻辑和系统服务
- `src/server/service/session.ts`会话管理服务基于Redis实现权限变更后强制重新登录
- `src/server/service/iaaa.ts`:北京大学统一认证(IAAA)对接服务,通过环境变量配置即可启用
- `src/server/service/dev/`:开发模式下的辅助功能需要的后台服务 - `src/server/service/dev/`:开发模式下的辅助功能需要的后台服务
- `src/server/utils/`:服务端专用工具函数库,为后端业务逻辑提供基础设施支持 - `src/server/utils/`:服务端专用工具函数库,为后端业务逻辑提供基础设施支持
- `src/api/dev/`开发模式下的辅助功能需要的api - `src/api/dev/`开发模式下的辅助功能需要的api

View File

@@ -1,6 +1,6 @@
{ {
"name": "hair-keeper", "name": "hair-keeper",
"version": "1.2.0", "version": "1.3.0",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "next dev -p 3000 --turbo", "dev": "next dev -p 3000 --turbo",

View File

@@ -3,4 +3,4 @@
*/ */
export const SITE_NAME = 'Hair Keeper' export const SITE_NAME = 'Hair Keeper'
export const SITE_DESCRIPTION = '高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑' export const SITE_DESCRIPTION = '高度集成、深度定制、约定优于配置的全栈Web应用模板旨在保持灵活性的同时提供一套基于成熟架构的开发底座自带身份认证、权限控制、丰富前端组件、文件上传、后台任务、智能体开发等丰富功能提供AI开发辅助免于纠结功能如何实现可快速上手专注于业务逻辑'
export const SITE_VERSION = 'v1.2.0' export const SITE_VERSION = 'v1.3.0'