feat(skill): pin run revision bindings

This commit is contained in:
huanghuoguoguo
2026-09-28 10:22:01 +08:00
parent 1ab1a29b53
commit 9b8d1b4034
16 changed files with 657 additions and 274 deletions
@@ -825,7 +825,10 @@ export default function SkillForm({
try {
if (initSkillName) {
const resp = await httpClient.updateSkill(initSkillName, baseSkillData);
const resp = await httpClient.updateSkill(initSkillName, {
...baseSkillData,
base_revision: skill.revision || '',
});
toast.success(t('skills.saveSuccess'));
onSkillUpdated(resp.skill.name);
} else {
+1
View File
@@ -936,6 +936,7 @@ export interface Skill {
description: string;
instructions?: string;
package_root?: string;
revision?: string;
is_builtin?: boolean;
created_at?: string;
updated_at?: string;
+3 -1
View File
@@ -2263,7 +2263,7 @@ export class BackendClient extends BaseHttpClient {
public updateSkill(
name: string,
skill: Partial<Skill>,
skill: Partial<Skill> & { base_revision: string },
): Promise<ApiRespSkill> {
return this.put(`/api/v1/skills/${name}`, skill);
}
@@ -2327,6 +2327,7 @@ export class BackendClient extends BaseHttpClient {
skillName: string,
filePath: string,
content: string,
baseRevision: string,
): Promise<{
skill: { name: string };
path: string;
@@ -2334,6 +2335,7 @@ export class BackendClient extends BaseHttpClient {
}> {
return this.put(`/api/v1/skills/${skillName}/files/${filePath}`, {
content,
base_revision: baseRevision,
});
}
}