chore: initialize qiming workspace repository

This commit is contained in:
Codex
2026-05-29 14:22:48 +08:00
commit bfd67a0f2c
10750 changed files with 1885711 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>app-platform-memory</artifactId>
<groupId>com.xspaceagi</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>app-platform-memory-api</artifactId>
<dependencies>
<dependency>
<groupId>com.xspaceagi</groupId>
<artifactId>app-platform-memory-application</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,52 @@
package com.xspaceagi.memory.api.controller;
import com.xspaceagi.memory.api.dto.MemoryUnitQuery;
import com.xspaceagi.memory.sdk.dto.MemoryDeleteDto;
import com.xspaceagi.memory.sdk.dto.MemorySaveDto;
import com.xspaceagi.memory.sdk.dto.MemoryUnitQueryDTO;
import com.xspaceagi.memory.sdk.service.IMemoryRpcService;
import com.xspaceagi.system.sdk.service.dto.UserAccessKeyDto;
import com.xspaceagi.system.spec.common.RequestContext;
import com.xspaceagi.system.spec.dto.ReqResult;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ForSandboxAgentController {
@Resource
private IMemoryRpcService iMemoryRpcService;
@PostMapping("/api/v1/4sandbox/memory/query")
public ReqResult<String> query(@RequestBody MemoryUnitQuery memoryUnitQuery) {
UserAccessKeyDto userAccessKey = (UserAccessKeyDto) RequestContext.get().getUserAccessKey();
MemoryUnitQueryDTO memoryUnitQueryDTO = new MemoryUnitQueryDTO();
memoryUnitQueryDTO.setTenantId(RequestContext.get().getTenantId());
memoryUnitQueryDTO.setUserId(RequestContext.get().getUserId());
memoryUnitQueryDTO.setAgentId(Long.parseLong(userAccessKey.getTargetId()));
memoryUnitQueryDTO.setCategories(memoryUnitQuery.getCategories());
memoryUnitQueryDTO.setSubCategories(memoryUnitQuery.getSubCategories());
memoryUnitQueryDTO.setTags(memoryUnitQuery.getTags());
memoryUnitQueryDTO.setQueryType(memoryUnitQuery.getTimeRangeType());
memoryUnitQueryDTO.setTimeRange(memoryUnitQuery.getTimeRange());
memoryUnitQueryDTO.setLimit(memoryUnitQuery.getLimit() == null ? 10 : memoryUnitQuery.getLimit());
String memory = iMemoryRpcService.queryMemoriesMd(memoryUnitQueryDTO, memoryUnitQuery.isFilterSensitive());
return ReqResult.success(memory);
}
@PostMapping("/api/v1/4sandbox/memory/save")
public ReqResult<String> save(@RequestBody MemorySaveDto memorySaveDto) {
UserAccessKeyDto userAccessKey = (UserAccessKeyDto) RequestContext.get().getUserAccessKey();
iMemoryRpcService.saveMemories(RequestContext.get().getTenantId(), RequestContext.get().getUserId(), Long.parseLong(userAccessKey.getTargetId()), memorySaveDto);
return ReqResult.success();
}
@PostMapping("/api/v1/4sandbox/memory/delete")
public ReqResult<String> delete(@RequestBody MemoryDeleteDto memoryDeleteDto) {
iMemoryRpcService.deleteMemories(RequestContext.get().getTenantId(), RequestContext.get().getUserId(), memoryDeleteDto.getMemoryIds());
return ReqResult.success();
}
}

View File

@@ -0,0 +1,31 @@
package com.xspaceagi.memory.api.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Data
public class MemoryUnitQuery {
@Schema(description = "必须严格从上述一级分类中选择,不能自创")
private List<String> categories;
@Schema(description = "必须严格从上述二级分类中选择,不能自创")
private List<String> subCategories;
@Schema(description = "关键词标签列表,分词可以细粒度一点,尽量多生成有助于更精确查找")
private List<String> tags;
@Schema(description = "查询范围可选值为today|yesterday|recent|long-term|all")
private String timeRangeType;
@Schema(description = "时间范围非必填格式为2023-01-01 00:00:00-2023-01-01 23:59:59")
private String timeRange;
@Schema(description = "限制返回的记忆数量,默认为 10")
private Integer limit;
@Schema(description = "是否过滤敏感信息,默认为 true")
private boolean filterSensitive = true;
}

View File

@@ -0,0 +1,32 @@
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
<id>repack</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<!--
重新打包需要包含的jar包,这个过程会解压所有的jar包并按照jar的规则重新组合成一个jar包
这里需要包含当前这个工程 ,格式是{groupId}:{artifactId}
-->
<includes>
<!-- 包含项目自己 -->
<include>com.xspaceagi:app-platform-memory-api</include>
<include>com.xspaceagi:app-platform-memory-application</include>
<include>com.xspaceagi:app-platform-memory-domain</include>
<include>com.xspaceagi:app-platform-memory-infra</include>
<include>com.xspaceagi:app-platform-memory-spec</include>
</includes>
<!-- 打包结果目录:/ 表示target/ -->
<outputDirectory>/</outputDirectory>
<!-- 是否解压依赖 -->
<unpack>true</unpack>
<!-- 打包的scope -->
<!-- <scope>system</scope>-->
</dependencySet>
</dependencySets>
</assembly>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>app-platform-memory-api</artifactId>
<groupId>com.xspaceagi</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>app-platform-memory-api</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>