funifier-mcp 0.2.26 → 0.2.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cursor/rules/funifier.mdc +38 -41
- package/.github/copilot-instructions.md +38 -41
- package/AGENTS.md +56 -49
- package/README.md +40 -22
- package/datasource-funifier-docs/.coverage.json +326 -0
- package/datasource-funifier-docs/.validation.json +593 -0
- package/datasource-funifier-docs/knowledge/guides/aggregates.md +182 -70
- package/datasource-funifier-docs/knowledge/guides/database-access.md +174 -88
- package/datasource-funifier-docs/knowledge/guides/java-entities.md +294 -204
- package/datasource-funifier-docs/knowledge/guides/java-libraries.md +202 -226
- package/datasource-funifier-docs/knowledge/guides/java-managers.md +343 -265
- package/datasource-funifier-docs/knowledge/guides/trigger-examples.md +180 -236
- package/datasource-funifier-docs/knowledge/guides/triggers-guide.md +273 -191
- package/datasource-funifier-docs/knowledge/index.md +4 -1
- package/datasource-funifier-docs/knowledge/modules/achievement.md +1126 -28
- package/datasource-funifier-docs/knowledge/modules/action-log.md +469 -62
- package/datasource-funifier-docs/knowledge/modules/action.md +522 -70
- package/datasource-funifier-docs/knowledge/modules/auth.md +718 -69
- package/datasource-funifier-docs/knowledge/modules/avatar.md +483 -18
- package/datasource-funifier-docs/knowledge/modules/backup.md +603 -25
- package/datasource-funifier-docs/knowledge/modules/challenge.md +1048 -220
- package/datasource-funifier-docs/knowledge/modules/compact.md +469 -26
- package/datasource-funifier-docs/knowledge/modules/competition.md +811 -109
- package/datasource-funifier-docs/knowledge/modules/crossword.md +504 -28
- package/datasource-funifier-docs/knowledge/modules/csv-data.md +645 -20
- package/datasource-funifier-docs/knowledge/modules/custom-object.md +701 -36
- package/datasource-funifier-docs/knowledge/modules/database.md +730 -164
- package/datasource-funifier-docs/knowledge/modules/folder.md +935 -280
- package/datasource-funifier-docs/knowledge/modules/kpi-formulas.md +410 -15
- package/datasource-funifier-docs/knowledge/modules/lastmile.md +568 -29
- package/datasource-funifier-docs/knowledge/modules/leaderboard.md +595 -126
- package/datasource-funifier-docs/knowledge/modules/level.md +536 -54
- package/datasource-funifier-docs/knowledge/modules/lottery.md +809 -76
- package/datasource-funifier-docs/knowledge/modules/marketplace.md +688 -17
- package/datasource-funifier-docs/knowledge/modules/mystery.md +662 -52
- package/datasource-funifier-docs/knowledge/modules/notification.md +564 -26
- package/datasource-funifier-docs/knowledge/modules/patterns.md +519 -814
- package/datasource-funifier-docs/knowledge/modules/player.md +773 -73
- package/datasource-funifier-docs/knowledge/modules/point.md +380 -83
- package/datasource-funifier-docs/knowledge/modules/public.md +508 -178
- package/datasource-funifier-docs/knowledge/modules/question.md +619 -99
- package/datasource-funifier-docs/knowledge/modules/quiz.md +565 -120
- package/datasource-funifier-docs/knowledge/modules/scheduler.md +1092 -39
- package/datasource-funifier-docs/knowledge/modules/security.md +674 -112
- package/datasource-funifier-docs/knowledge/modules/staging.md +742 -19
- package/datasource-funifier-docs/knowledge/modules/story.md +565 -29
- package/datasource-funifier-docs/knowledge/modules/studio-page.md +470 -144
- package/datasource-funifier-docs/knowledge/modules/swap.md +552 -84
- package/datasource-funifier-docs/knowledge/modules/team.md +563 -45
- package/datasource-funifier-docs/knowledge/modules/trigger.md +876 -134
- package/datasource-funifier-docs/knowledge/modules/upload.md +468 -95
- package/datasource-funifier-docs/knowledge/modules/virtual-good.md +510 -63
- package/datasource-funifier-docs/knowledge/modules/webhook.md +375 -28
- package/datasource-funifier-docs/knowledge/modules/websocket.md +459 -26
- package/datasource-funifier-docs/knowledge/modules/widget.md +613 -27
- package/dist/cli/init.d.ts.map +1 -1
- package/dist/cli/init.js +42 -1
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/init.test.js +74 -3
- package/dist/cli/init.test.js.map +1 -1
- package/dist/cli/persona.d.ts +3 -0
- package/dist/cli/persona.d.ts.map +1 -0
- package/dist/cli/persona.js +25 -0
- package/dist/cli/persona.js.map +1 -0
- package/dist/mcp/bundle.js +119 -93
- package/dist/mcp/check-update.d.ts +5 -0
- package/dist/mcp/check-update.d.ts.map +1 -1
- package/dist/mcp/check-update.js +21 -10
- package/dist/mcp/check-update.js.map +1 -1
- package/dist/mcp/check-update.test.d.ts +2 -0
- package/dist/mcp/check-update.test.d.ts.map +1 -0
- package/dist/mcp/check-update.test.js +33 -0
- package/dist/mcp/check-update.test.js.map +1 -0
- package/dist/mcp/index.js +2 -2
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/prompts/templates.d.ts.map +1 -1
- package/dist/mcp/prompts/templates.js +35 -0
- package/dist/mcp/prompts/templates.js.map +1 -1
- package/dist/mcp/resources/documentation.d.ts +1 -1
- package/dist/mcp/resources/documentation.d.ts.map +1 -1
- package/dist/mcp/resources/documentation.js +39 -3
- package/dist/mcp/resources/documentation.js.map +1 -1
- package/dist/mcp/tools/connect.d.ts.map +1 -1
- package/dist/mcp/tools/connect.js +18 -8
- package/dist/mcp/tools/connect.js.map +1 -1
- package/dist/mcp/tools/database.d.ts.map +1 -1
- package/dist/mcp/tools/database.js +59 -47
- package/dist/mcp/tools/database.js.map +1 -1
- package/dist/mcp/tools/database.test.js +2 -2
- package/dist/mcp/tools/database.test.js.map +1 -1
- package/dist/mcp/tools/delete.d.ts.map +1 -1
- package/dist/mcp/tools/delete.js +13 -3
- package/dist/mcp/tools/delete.js.map +1 -1
- package/dist/mcp/tools/execute.d.ts.map +1 -1
- package/dist/mcp/tools/execute.js +20 -9
- package/dist/mcp/tools/execute.js.map +1 -1
- package/dist/mcp/tools/folder.d.ts.map +1 -1
- package/dist/mcp/tools/folder.js +22 -12
- package/dist/mcp/tools/folder.js.map +1 -1
- package/dist/mcp/tools/get.d.ts.map +1 -1
- package/dist/mcp/tools/get.js +16 -6
- package/dist/mcp/tools/get.js.map +1 -1
- package/dist/mcp/tools/index.d.ts +1 -1
- package/dist/mcp/tools/index.d.ts.map +1 -1
- package/dist/mcp/tools/index.js +28 -1
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/mcp/tools/list.d.ts.map +1 -1
- package/dist/mcp/tools/list.js +38 -14
- package/dist/mcp/tools/list.js.map +1 -1
- package/dist/mcp/tools/logs.d.ts.map +1 -1
- package/dist/mcp/tools/logs.js +15 -5
- package/dist/mcp/tools/logs.js.map +1 -1
- package/dist/mcp/tools/save.d.ts.map +1 -1
- package/dist/mcp/tools/save.js +14 -4
- package/dist/mcp/tools/save.js.map +1 -1
- package/dist/mcp/tools/save.test.js +3 -3
- package/dist/mcp/tools/save.test.js.map +1 -1
- package/dist/mcp/tools/search-docs.d.ts +3 -0
- package/dist/mcp/tools/search-docs.d.ts.map +1 -0
- package/dist/mcp/tools/search-docs.js +102 -0
- package/dist/mcp/tools/search-docs.js.map +1 -0
- package/package.json +6 -2
- package/skills/acquire-funifier-knowledge/SKILL.md +155 -0
- package/skills/acquire-funifier-knowledge/assets/templates/CONCERNS.md +25 -0
- package/skills/acquire-funifier-knowledge/assets/templates/CUSTOM_ENDPOINTS.md +24 -0
- package/skills/acquire-funifier-knowledge/assets/templates/CUSTOM_PAGES.md +24 -0
- package/skills/acquire-funifier-knowledge/assets/templates/GAME_MECHANICS.md +35 -0
- package/skills/acquire-funifier-knowledge/assets/templates/INTEGRATIONS.md +35 -0
- package/skills/acquire-funifier-knowledge/assets/templates/LEADERBOARDS.md +24 -0
- package/skills/acquire-funifier-knowledge/assets/templates/OVERVIEW.md +86 -0
- package/skills/acquire-funifier-knowledge/assets/templates/PLAYER_MODEL.md +31 -0
- package/skills/acquire-funifier-knowledge/assets/templates/SCHEDULERS.md +25 -0
- package/skills/acquire-funifier-knowledge/assets/templates/TECHNIQUES_AND_PATTERNS.md +26 -0
- package/skills/acquire-funifier-knowledge/assets/templates/TRIGGERS.md +27 -0
- package/skills/acquire-funifier-knowledge/references/funifier-inventory-checklist.md +81 -0
- package/skills/acquire-funifier-knowledge/references/game-techniques-taxonomy.md +62 -0
- package/skills/acquire-funifier-knowledge/references/mcp-call-patterns.md +118 -0
- package/skills/funifier/SKILL.md +88 -0
- package/skills/funifier/references/configure-security.md +96 -0
- package/skills/{funifier-create-action/SKILL.md → funifier/references/create-action.md} +0 -33
- package/skills/funifier/references/create-aggregate.md +144 -0
- package/skills/funifier/references/create-challenge.md +116 -0
- package/skills/funifier/references/create-competition.md +98 -0
- package/skills/funifier/references/create-crossword.md +574 -0
- package/skills/funifier/references/create-custom-object.md +91 -0
- package/skills/funifier/references/create-custom-page.md +135 -0
- package/skills/funifier/references/create-folder.md +104 -0
- package/skills/funifier/references/create-lastmile.md +643 -0
- package/skills/{funifier-create-leaderboard/SKILL.md → funifier/references/create-leaderboard.md} +0 -33
- package/skills/funifier/references/create-level.md +94 -0
- package/skills/funifier/references/create-lottery.md +913 -0
- package/skills/funifier/references/create-mystery.md +769 -0
- package/skills/funifier/references/create-notification.md +75 -0
- package/skills/{funifier-create-point/SKILL.md → funifier/references/create-point.md} +0 -33
- package/skills/funifier/references/create-quiz.md +98 -0
- package/skills/funifier/references/create-scheduler.md +141 -0
- package/skills/funifier/references/create-story.md +636 -0
- package/skills/funifier/references/create-swap.md +95 -0
- package/skills/{funifier-create-trigger/SKILL.md → funifier/references/create-trigger.md} +0 -33
- package/skills/funifier/references/create-virtual-good.md +96 -0
- package/skills/funifier/references/create-webhook.md +72 -0
- package/skills/funifier/references/create-websocket.md +71 -0
- package/skills/funifier/references/create-widget.md +76 -0
- package/skills/funifier/references/debug.md +87 -0
- package/skills/funifier/references/help.md +81 -0
- package/skills/funifier/references/implement-frontend.md +106 -0
- package/skills/funifier/references/import-csv.md +75 -0
- package/skills/funifier/references/manage-player.md +82 -0
- package/skills/funifier/references/manage-team.md +76 -0
- package/skills/funifier/references/upload-file.md +91 -0
- package/skills/funifier-create-aggregate/SKILL.md +0 -127
- package/skills/funifier-create-challenge/SKILL.md +0 -88
- package/skills/funifier-create-custom-page/SKILL.md +0 -127
- package/skills/funifier-create-level/SKILL.md +0 -87
- package/skills/funifier-create-quiz/SKILL.md +0 -87
- package/skills/funifier-create-scheduler/SKILL.md +0 -127
- package/skills/funifier-create-virtual-good/SKILL.md +0 -87
- package/skills/funifier-debug/SKILL.md +0 -92
- package/skills/funifier-help/SKILL.md +0 -86
- package/skills/funifier-implement-frontend/SKILL.md +0 -90
- package/skills/funifier-index/SKILL.md +0 -58
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save.test.js","sourceRoot":"","sources":["../../../src/mcp/tools/save.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"save.test.js","sourceRoot":"","sources":["../../../src/mcp/tools/save.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-docs.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/search-docs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,QAqEzE"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.registerSearchDocsTool = registerSearchDocsTool;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
38
|
+
const path = __importStar(require("path"));
|
|
39
|
+
const zod_1 = require("zod");
|
|
40
|
+
const lexical_1 = require("../../core/lexical");
|
|
41
|
+
function registerSearchDocsTool(server, docsPath) {
|
|
42
|
+
const indexPath = path.join(docsPath, "..", ".search-index.json");
|
|
43
|
+
let cachedIndex = null;
|
|
44
|
+
function loadIndex() {
|
|
45
|
+
if (cachedIndex)
|
|
46
|
+
return cachedIndex;
|
|
47
|
+
if (!fs.existsSync(indexPath))
|
|
48
|
+
return null;
|
|
49
|
+
cachedIndex = JSON.parse(fs.readFileSync(indexPath, "utf-8"));
|
|
50
|
+
return cachedIndex;
|
|
51
|
+
}
|
|
52
|
+
server.registerTool("funifier_search_docs", {
|
|
53
|
+
title: "Search Funifier Documentation",
|
|
54
|
+
description: "Search the Funifier documentation index using TF-IDF scoring and return ranked file paths. " +
|
|
55
|
+
"Use this before fetching a full documentation resource to find the most relevant files for your query. " +
|
|
56
|
+
"Returns file paths that can be fetched via funifier://docs/{path}.",
|
|
57
|
+
inputSchema: {
|
|
58
|
+
query: zod_1.z
|
|
59
|
+
.string()
|
|
60
|
+
.describe("Search query — use domain terms like 'trigger groovy event', 'challenge rules points', 'auth oauth player'"),
|
|
61
|
+
top: zod_1.z
|
|
62
|
+
.number()
|
|
63
|
+
.optional()
|
|
64
|
+
.describe("Maximum number of results to return. Default: 5."),
|
|
65
|
+
min_score: zod_1.z
|
|
66
|
+
.number()
|
|
67
|
+
.optional()
|
|
68
|
+
.describe("Minimum relevance score threshold (0.0–1.0). Default: 0.1."),
|
|
69
|
+
},
|
|
70
|
+
annotations: {
|
|
71
|
+
readOnlyHint: true,
|
|
72
|
+
destructiveHint: false,
|
|
73
|
+
idempotentHint: true,
|
|
74
|
+
openWorldHint: false,
|
|
75
|
+
},
|
|
76
|
+
}, ({ query, top, min_score }) => {
|
|
77
|
+
const index = loadIndex();
|
|
78
|
+
if (!index) {
|
|
79
|
+
return {
|
|
80
|
+
content: [{ type: "text", text: "Documentation search index not found. Run `npm run build:skills` to generate it." }],
|
|
81
|
+
isError: true,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
const results = (0, lexical_1.scoreFiles)(query, index, { minScore: min_score ?? 0.1, top: top ?? 5 });
|
|
85
|
+
if (results.length === 0) {
|
|
86
|
+
return {
|
|
87
|
+
content: [{ type: "text", text: `No documentation found matching "${query}". Try broader terms.` }],
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
const lines = results.map((r, i) => {
|
|
91
|
+
const resourcePath = r.file.replace(/^knowledge\//, "").replace(/\.md$/, "");
|
|
92
|
+
return `${i + 1}. funifier://docs/${resourcePath} [score: ${r.score.toFixed(2)}]`;
|
|
93
|
+
});
|
|
94
|
+
return {
|
|
95
|
+
content: [{
|
|
96
|
+
type: "text",
|
|
97
|
+
text: `Documentation search results for "${query}":\n\n${lines.join("\n")}\n\nFetch a resource with its funifier://docs/... URI to read the full content.`,
|
|
98
|
+
}],
|
|
99
|
+
};
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=search-docs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-docs.js","sourceRoot":"","sources":["../../../src/mcp/tools/search-docs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,wDAqEC;AA3ED,uCAAyB;AACzB,2CAA6B;AAC7B,6BAAwB;AAExB,gDAAkE;AAElE,SAAgB,sBAAsB,CAAC,MAAiB,EAAE,QAAgB;IACxE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAClE,IAAI,WAAW,GAAuB,IAAI,CAAC;IAE3C,SAAS,SAAS;QAChB,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QAC3C,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAgB,CAAC;QAC7E,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,+BAA+B;QACtC,WAAW,EACT,6FAA6F;YAC7F,yGAAyG;YACzG,oEAAoE;QACtE,WAAW,EAAE;YACX,KAAK,EAAE,OAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,CAAC,4GAA4G,CAAC;YACzH,GAAG,EAAE,OAAC;iBACH,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,kDAAkD,CAAC;YAC/D,SAAS,EAAE,OAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,4DAA4D,CAAC;SAC1E;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE;QAC5B,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kFAAkF,EAAE,CAAC;gBACrH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,KAAK,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAExF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,KAAK,uBAAuB,EAAE,CAAC;aACpG,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7E,OAAO,GAAG,CAAC,GAAG,CAAC,qBAAqB,YAAY,aAAa,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qCAAqC,KAAK,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iFAAiF;iBAC3J,CAAC;SACH,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "funifier-mcp",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.28",
|
|
4
4
|
"description": "Funifier AI toolkit — MCP server, API client, and Claude Code skills for the Funifier gamification platform",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -40,6 +40,9 @@
|
|
|
40
40
|
"build:skills": "tsx scripts/build-skills.ts",
|
|
41
41
|
"build:skills:force": "tsx scripts/build-skills.ts --force",
|
|
42
42
|
"search:docs": "tsx scripts/search-docs.ts",
|
|
43
|
+
"validate:skills": "tsx scripts/validate-skills.ts",
|
|
44
|
+
"enrich:skills": "tsx scripts/enrich-skills.ts",
|
|
45
|
+
"generate:skills": "tsx scripts/generate-skills.ts",
|
|
43
46
|
"dev:init": "npm run build && node scripts/dev-init.js"
|
|
44
47
|
},
|
|
45
48
|
"keywords": [
|
|
@@ -59,6 +62,7 @@
|
|
|
59
62
|
"zod": "^3.25.76"
|
|
60
63
|
},
|
|
61
64
|
"devDependencies": {
|
|
65
|
+
"@anthropic-ai/sdk": "^0.96.0",
|
|
62
66
|
"@types/node": "^25.5.0",
|
|
63
67
|
"esbuild": "^0.20.0",
|
|
64
68
|
"tsx": "^4.21.0",
|
|
@@ -68,4 +72,4 @@
|
|
|
68
72
|
"engines": {
|
|
69
73
|
"node": ">=18"
|
|
70
74
|
}
|
|
71
|
-
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: acquire-funifier-knowledge
|
|
3
|
+
description: Mapeia, documenta e audita uma instância Funifier EXISTENTE via MCP, produzindo documentação completa e rastreável em docs/funifier/ (overview, mecânicas de jogo, triggers, schedulers, endpoints, páginas, leaderboards, modelo de player, integrações, técnicas de jogo e inconsistências). Cada afirmação aponta para o objeto/ID que a sustenta. Use quando o usuário pedir para mapear, documentar, auditar ou fazer onboarding numa instância já configurada — por exemplo "mapeia essa gamificação", "documenta tudo que tem nessa instância Funifier", "preciso entender o que foi configurado aqui", "audita os triggers e schedulers", "map this Funifier instance", "document the gamification setup". NÃO use para criar ou editar elementos novos, debugging pontual de um único objeto, ou perguntas isoladas sobre a plataforma — para criar/editar/debugar use a skill funifier.
|
|
4
|
+
license: CC-BY-4.0
|
|
5
|
+
metadata:
|
|
6
|
+
author: Fernando Viana
|
|
7
|
+
version: 1.0.0
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Acquire Funifier Knowledge
|
|
11
|
+
|
|
12
|
+
Varre uma instância Funifier existente via MCP e produz documentação completa, auditável e rastreável de toda a gamificação configurada. Esta skill é de DESCOBERTA e DOCUMENTAÇÃO — ela lê o estado vivo do servidor e o transcreve em arquivos versionáveis. Ela nunca cria, edita ou deleta nada na instância.
|
|
13
|
+
|
|
14
|
+
## Quando usar / Quando NÃO usar
|
|
15
|
+
|
|
16
|
+
- **Use** quando o objetivo é entender, mapear ou auditar uma instância já configurada (onboarding num projeto herdado, due diligence, documentação de handover).
|
|
17
|
+
- **NÃO use** para criar/editar/deletar elementos, debugar um único objeto, ou responder uma pergunta pontual sobre a plataforma. Para isso, use a skill `funifier` (`skills/funifier/SKILL.md`), que é a base de conhecimento técnico (semântica de campos, enums, valores corretos).
|
|
18
|
+
|
|
19
|
+
## Pré-requisitos
|
|
20
|
+
|
|
21
|
+
1. **MCP Funifier disponível.** Esta skill depende das ferramentas `funifier_*`. Sem elas, pare e peça ao usuário para configurar o MCP.
|
|
22
|
+
2. **Base de conhecimento técnico.** Para interpretar a semântica de cada objeto (o que significa `range`, `operator`, `limitPerType` num challenge, etc.), consulte a skill `funifier` e seus arquivos `references/`. Nunca aprenda a semântica a partir de um único objeto vivo — os docs são a autoridade.
|
|
23
|
+
|
|
24
|
+
## Output Contract
|
|
25
|
+
|
|
26
|
+
Produza esta estrutura em `docs/funifier/`. **Nenhum arquivo pode ficar vazio** (use `[TODO]`/`[ASK USER]` quando faltar dado, nunca deixe a seção em branco). Os templates de cada arquivo estão em `assets/templates/`.
|
|
27
|
+
|
|
28
|
+
| Arquivo | Conteúdo |
|
|
29
|
+
|---------|----------|
|
|
30
|
+
| `OVERVIEW.md` | Identificação da instância, contagens agregadas por categoria, data do snapshot, escopo do mapeamento e o **mapa de arquitetura em Mermaid** (o que dispara/premia/alimenta/chama o quê) |
|
|
31
|
+
| `GAME_MECHANICS.md` | Pontos, níveis, achievements/badges, challenges, missions, quizzes, virtual goods — com IDs, regras de atribuição e condições |
|
|
32
|
+
| `TRIGGERS.md` | Todos os triggers: nome, ID, entidade/evento de origem, condições, ações, status |
|
|
33
|
+
| `SCHEDULERS.md` | Cron jobs: nome, expressão cron, ação, próxima/última execução conhecida, status |
|
|
34
|
+
| `CUSTOM_ENDPOINTS.md` | Public endpoints em Java/Groovy: rota, método, parâmetros, descrição, status |
|
|
35
|
+
| `CUSTOM_PAGES.md` | Custom pages e widgets: nome, rota, propósito, integrações |
|
|
36
|
+
| `LEADERBOARDS.md` | Rankings: nome, métrica base, escopo, período, regras de empate |
|
|
37
|
+
| `PLAYER_MODEL.md` | Atributos custom de player, segmentações, teams/grupos, propriedades estendidas |
|
|
38
|
+
| `INTEGRATIONS.md` | Webhooks de saída, websockets, auth modules, integrações externas |
|
|
39
|
+
| `TECHNIQUES_AND_PATTERNS.md` | Técnicas de jogos inferidas dos elementos mapeados, com evidência por objeto |
|
|
40
|
+
| `CONCERNS.md` | Inconsistências: triggers órfãos, schedulers desativados, achievements inatingíveis, endpoints sem uso, regras conflitantes |
|
|
41
|
+
|
|
42
|
+
## Mapeamento documento → fonte MCP (CRÍTICO)
|
|
43
|
+
|
|
44
|
+
O vocabulário de gamificação do usuário **não corresponde 1:1** ao enum de tipos do Funifier. Documentar um tipo que não existe é um erro grave. Use exatamente este mapeamento. Os **18 tipos listáveis** via `funifier_list`/`funifier_get` são: `trigger`, `scheduler`, `aggregate`, `websocket`, `widget`, `custom-page`, `public-endpoint`, `challenge-aggregate`, `auth-module`, `ai-knowledge`, `action`, `challenge`, `point`, `level`, `leaderboard`, `quiz`, `virtual-good-catalog`, `virtual-good-item`.
|
|
45
|
+
|
|
46
|
+
| Documento | Fonte primária (MCP) |
|
|
47
|
+
|-----------|----------------------|
|
|
48
|
+
| `OVERVIEW.md` | Contagem de cada um dos 18 tipos via `funifier_list` + `funifier_database action=collections` |
|
|
49
|
+
| `GAME_MECHANICS.md` | `point`, `level`, `challenge`, `action`, `quiz`, `virtual-good-catalog`, `virtual-good-item`, `challenge-aggregate`, `aggregate` |
|
|
50
|
+
| `TRIGGERS.md` | `trigger` (+ `funifier_logs type=trigger` para saúde de execução) |
|
|
51
|
+
| `SCHEDULERS.md` | `scheduler` (+ `funifier_logs type=scheduler`) |
|
|
52
|
+
| `CUSTOM_ENDPOINTS.md` | `public-endpoint` |
|
|
53
|
+
| `CUSTOM_PAGES.md` | `custom-page`, `widget` |
|
|
54
|
+
| `LEADERBOARDS.md` | `leaderboard` |
|
|
55
|
+
| `PLAYER_MODEL.md` | `funifier_database` (coleções `player`, `team`) + `auth-module` |
|
|
56
|
+
| `INTEGRATIONS.md` | `websocket`, `auth-module`, `ai-knowledge` + coleções de webhook/notification via `funifier_database` + ações HTTP em triggers |
|
|
57
|
+
| `TECHNIQUES_AND_PATTERNS.md` | Inferência cruzada (sem fonte nova; cita IDs já mapeados) |
|
|
58
|
+
| `CONCERNS.md` | Análise cruzada (status `inactive`, órfãos, logs vazios, regras conflitantes) |
|
|
59
|
+
|
|
60
|
+
**Mapeamentos de vocabulário que você DEVE respeitar:**
|
|
61
|
+
|
|
62
|
+
- **"achievements/badges"** — não existe tipo próprio. São `challenge` (regras + recompensas) e/ou `virtual-good-item` (badges como itens de catálogo). Documente em `GAME_MECHANICS.md` e identifique qual mecanismo implementa o quê.
|
|
63
|
+
- **"missions"** — não existe tipo próprio. São cadeias de `challenge` ou hierarquia de learning trail (folder). Registre a suposição com `[ASK USER]` quando a intenção não for óbvia.
|
|
64
|
+
- **"webhooks / integrações de saída"** — não há tipo em `funifier_list`. Devem ser inferidos de coleções via `funifier_database` (ex.: coleção de webhook/notification) e de ações de `trigger` que chamam endpoints externos. `INTEGRATIONS.md` terá legitimamente vários `[TODO]`/`[ASK USER]` — isso é esperado, não um defeito.
|
|
65
|
+
- **Learning trails (folders)** — não são listáveis por `funifier_list`. Use `funifier_folder operation=inside` a partir de um id raiz conhecido, ou `funifier_database`.
|
|
66
|
+
|
|
67
|
+
## Restrições de ferramentas (read-only — regra dura)
|
|
68
|
+
|
|
69
|
+
Esta é uma auditoria. **Nunca** modifique a instância:
|
|
70
|
+
|
|
71
|
+
- `funifier_database`: use **somente** `action=query`, `action=aggregate`, `action=collections`. NUNCA `insert`/`update`/`delete`/`bulk`.
|
|
72
|
+
- `funifier_folder`: use **somente** `operation=inside` e `operation=breadcrumb`. NUNCA `progress` — ele dispara o trigger `folder_progress` como efeito colateral.
|
|
73
|
+
- NUNCA use `funifier_execute` (roda código no servidor), `funifier_save` ou `funifier_delete`.
|
|
74
|
+
- `funifier_get`: use `mode=read` (inspeção inline, não cria arquivos temporários).
|
|
75
|
+
|
|
76
|
+
**Economia de tokens:** faça o inventário com `funifier_list` (retorna resumo leve) primeiro; só use `funifier_get mode=read` nos objetos que precisam de detalhe (scripts Groovy, regras completas de challenge, pipelines). Não puxe o payload completo de tudo cegamente. Padrões de chamada detalhados em `references/mcp-call-patterns.md`.
|
|
77
|
+
|
|
78
|
+
## Workflow
|
|
79
|
+
|
|
80
|
+
Avance pelas fases em ordem. As fases 1 e 6 são sempre completas (mesmo em Modo Foco).
|
|
81
|
+
|
|
82
|
+
1. **Validar conexão e identificar a instância.** Confirme que o MCP responde (uma chamada `funifier_database action=collections` ou um `funifier_list type=trigger limit=1` serve). Registre serverUrl/nome da conexão e a data do snapshot para o `OVERVIEW.md`.
|
|
83
|
+
2. **Inventário bruto.** Para cada um dos 18 tipos, rode `funifier_list` e registre os IDs e nomes. Rode `funifier_database action=collections` para descobrir coleções que revelam elementos fora do enum (webhooks, notifications, competitions, custom `__c`, player, team). Consulte `references/funifier-inventory-checklist.md` para a lista de perguntas por categoria.
|
|
84
|
+
3. **Detalhamento.** Para cada objeto que precisa de detalhe, rode `funifier_get mode=read` e extraia as regras, condições e ações. Amostre coleções relevantes com `funifier_database action=query` (limit pequeno) para entender o modelo de player/team.
|
|
85
|
+
4. **Análise cruzada e diagrama de arquitetura.** Relacione objetos: qual `trigger` alimenta qual `point`/`challenge`; qual `scheduler` chama qual `public-endpoint`; quais `action`s satisfazem as regras de cada `challenge`; quais `leaderboard`s usam quais `point`s. Anote as relações para `CONCERNS.md` e `TECHNIQUES_AND_PATTERNS.md`. Com essas relações já mapeadas (e **somente** com elas), monte o **mapa de arquitetura em Mermaid** e escreva-o na seção própria do `OVERVIEW.md` — siga as convenções em "Diagrama de arquitetura (Mermaid)" abaixo.
|
|
86
|
+
5. **Inferência de técnicas de jogos.** Classifique as técnicas observadas usando `references/game-techniques-taxonomy.md`. Cada técnica DEVE ser ligada aos IDs concretos que a implementam. Sem objeto que a sustente, não afirme a técnica.
|
|
87
|
+
6. **Validação.** Verifique: (a) cada claim aponta para um ID/objeto; (b) nenhuma seção obrigatória está vazia; (c) todo nome de ferramenta usado existe; (d) nenhum tipo inventado. Veja a checklist no fim deste arquivo.
|
|
88
|
+
7. **Apresentar.** Mostre um sumário (contagens + onde está cada doc) e uma lista numerada de itens `[ASK USER]` e divergências encontradas, para o usuário resolver.
|
|
89
|
+
|
|
90
|
+
## Regras de evidência (críticas)
|
|
91
|
+
|
|
92
|
+
- **Toda afirmação aponta para um objeto Funifier identificável** — `_id`, nome único, rota de endpoint, ou nome de coleção. Sem isso, não escreva a afirmação.
|
|
93
|
+
- Use **`[TODO]`** quando o dado existe mas não foi possível obtê-lo via MCP nesta execução (ex.: payload grande demais, coleção não amostrada).
|
|
94
|
+
- Use **`[ASK USER]`** quando a resposta depende de intenção de produto/negócio — ex.: "esse trigger desativado foi intencional?", "essa cadeia de challenges é uma 'mission'?".
|
|
95
|
+
- **Nunca infira comportamento sem um objeto que o sustente.** "Provavelmente dispara X" é proibido; cite a config do trigger e o evento exato.
|
|
96
|
+
- **Toda seção termina com um bloco `## Evidence`** listando os IDs consultados e as chamadas MCP que produziram o conteúdo (ex.: `funifier_list type=trigger`, `funifier_get type=challenge id=...`).
|
|
97
|
+
|
|
98
|
+
## Diagrama de arquitetura (Mermaid)
|
|
99
|
+
|
|
100
|
+
O `OVERVIEW.md` carrega um **mapa de arquitetura** em Mermaid: a visão macro de "o que dispara, premia, alimenta e chama o quê". Ele é a *visualização* das relações já levantadas na Fase 4 — nunca uma fonte nova de verdade.
|
|
101
|
+
|
|
102
|
+
**Regras duras:**
|
|
103
|
+
|
|
104
|
+
1. **Toda aresta corresponde a um campo configurado num objeto real.** A origem é o `entity`/`event` de um `trigger`, a recompensa de um `challenge`, a métrica de um `leaderboard`, o preço de um `virtual-good-item`, etc. Sem campo que a sustente, a aresta não existe.
|
|
105
|
+
2. **Toda aresta é rastreável no doc da categoria.** Cada relação desenhada DEVE também aparecer como fato no doc correspondente (`TRIGGERS.md`, `GAME_MECHANICS.md`, `LEADERBOARDS.md`, ...). O diagrama não afirma nada que os docs não afirmem.
|
|
106
|
+
3. **Relação incerta = aresta tracejada `-.->` rotulada `[ASK USER]`.** Nunca desenhe uma aresta sólida "provável" (mesmo princípio do anti-padrão "provavelmente dispara X").
|
|
107
|
+
4. **Legibilidade > completude.** Se uma categoria tem **mais de 8 objetos**, não desenhe um nó por objeto: colapse a categoria num único nó anotado com a contagem (ex.: `challenges["challenges (×24)"]`) e desenhe só os fluxos principais. O mapa do `OVERVIEW.md` é macro; diagramas detalhados por área só quando o usuário pedir.
|
|
108
|
+
|
|
109
|
+
**Convenções de sintaxe (para o Mermaid não quebrar):**
|
|
110
|
+
|
|
111
|
+
- Use `flowchart LR`. Agrupe os nós em `subgraph`s por camada: `Ações & Eventos`, `Automação` (`trigger`/`scheduler`), `Mecânicas` (`challenge`/`quiz`/`level`/trilhas), `Recompensas` (`point`/`virtual-good`), `Visualização` (`leaderboard`/`aggregate`/`custom-page`/`widget`), `Integrações` (`public-endpoint`/`webhook`/`websocket`/`auth-module`).
|
|
112
|
+
- **IDs de nó**: apenas `[A-Za-z0-9_]`. Derive do nome substituindo qualquer outro caractere por `_`. Rótulo sempre entre aspas duplas, com nome + tipo: `tr_login["login_trigger · trigger"]`.
|
|
113
|
+
- **Verbos das arestas** (use só estes, sempre rotulados): `dispara` (trigger/scheduler → ação/endpoint), `premia` (challenge/quiz → point/virtual-good), `alimenta` (point → leaderboard; action → challenge), `exige` (level → point; item → preço), `lê` (aggregate → coleção; page/widget → aggregate/leaderboard), `chama` (frontend/page → public-endpoint; trigger → webhook externo).
|
|
114
|
+
- Uma instrução por linha; nunca use parênteses em rótulos sem aspas.
|
|
115
|
+
|
|
116
|
+
O esqueleto pronto para preencher está em `assets/templates/OVERVIEW.md` — substitua os `{{...}}` pelos objetos reais e remova as arestas que não tiverem relação comprovada.
|
|
117
|
+
|
|
118
|
+
## Modo Foco (Focus Area Mode)
|
|
119
|
+
|
|
120
|
+
Se o usuário pedir foco ("só triggers", "mecânicas e técnicas apenas"):
|
|
121
|
+
|
|
122
|
+
- A **Fase 1** (validar/identificar) roda sempre, completa.
|
|
123
|
+
- Os documentos do foco são preenchidos **completos**.
|
|
124
|
+
- Os demais documentos obrigatórios **existem**, com suas seções presentes mas marcadas `[TODO]` (e uma nota indicando que ficaram fora do escopo desta execução).
|
|
125
|
+
- O **mapa de arquitetura** no `OVERVIEW.md` é sempre gerado; seu escopo reflete o foco — categorias fora do foco aparecem colapsadas num único nó com a contagem.
|
|
126
|
+
- A **Fase 6** (validação) roda em **todos** os documentos.
|
|
127
|
+
|
|
128
|
+
## Anti-padrões
|
|
129
|
+
|
|
130
|
+
| ❌ Não fazer | ✅ Fazer |
|
|
131
|
+
|-------------|---------|
|
|
132
|
+
| "Provavelmente este trigger dispara X" | Citar a configuração do trigger e o evento exato (`entity`/`event`) registrado |
|
|
133
|
+
| Inferir técnica de jogo sem objeto que a implemente | Linkar cada técnica a IDs concretos no Funifier |
|
|
134
|
+
| Documentar objetos com `status: inactive` como se estivessem ativos | Marcar o status explicitamente; mover para `CONCERNS.md` se órfão |
|
|
135
|
+
| Confundir achievement com challenge ou mission | Respeitar a tipagem do Funifier; cada categoria no seu doc |
|
|
136
|
+
| Inventar um tipo (ex.: tratar "webhook" como `funifier_list type=webhook`) | Usar só os 18 tipos reais; inferir o resto de coleções e ações |
|
|
137
|
+
| Modificar a instância para "testar" um comportamento | Apenas ler; nunca `save`/`delete`/`execute`/`insert`/`update` |
|
|
138
|
+
| Desenhar uma aresta "provável" no diagrama Mermaid | Só desenhar arestas com um campo de objeto que as sustente; incertezas viram `-.->` `[ASK USER]` |
|
|
139
|
+
|
|
140
|
+
## Quando ler cada arquivo de referência
|
|
141
|
+
|
|
142
|
+
- `references/funifier-inventory-checklist.md` — na **Fase 2**, para garantir que nenhuma categoria de objeto foi esquecida.
|
|
143
|
+
- `references/mcp-call-patterns.md` — nas **Fases 2–4**, para os padrões corretos de chamada de cada ferramenta MCP.
|
|
144
|
+
- `references/game-techniques-taxonomy.md` — na **Fase 5**, para classificar as técnicas com vocabulário consistente.
|
|
145
|
+
|
|
146
|
+
## Checklist de validação (Fase 6)
|
|
147
|
+
|
|
148
|
+
- [ ] Os 11 arquivos existem em `docs/funifier/` e nenhum está vazio.
|
|
149
|
+
- [ ] Cada afirmação aponta para um ID/objeto/coleção identificável.
|
|
150
|
+
- [ ] Todo objeto com status conhecido tem o status registrado.
|
|
151
|
+
- [ ] Nenhum tipo inventado — só os 18 tipos reais + coleções via `funifier_database`.
|
|
152
|
+
- [ ] Cada documento termina com um bloco `## Evidence`.
|
|
153
|
+
- [ ] O `OVERVIEW.md` contém o mapa de arquitetura em Mermaid; cada aresta tem um campo de objeto que a sustenta e o mesmo fato aparece no doc da categoria. Incertezas são `-.->` `[ASK USER]`, não arestas sólidas.
|
|
154
|
+
- [ ] Itens dependentes de intenção estão marcados `[ASK USER]`, não adivinhados.
|
|
155
|
+
- [ ] Nenhuma ferramenta de escrita foi usada (`save`/`delete`/`execute`/`insert`/`update`/`bulk`/`folder progress`).
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Funifier — Inconsistências e Concerns
|
|
2
|
+
|
|
3
|
+
> Achados de auditoria. Cada item aponta para o(s) objeto(s) envolvido(s) por ID. Distinga fato observado (`[FATO]`) de pergunta de intenção (`[ASK USER]`).
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
| # | Tipo de problema | Objeto(s) (ID) | Observação | Severidade | Ação sugerida |
|
|
8
|
+
|---|------------------|----------------|------------|------------|---------------|
|
|
9
|
+
| 1 | {{trigger órfão / scheduler off / achievement inatingível / endpoint sem uso / regra conflitante}} | {{ids}} | {{o que se observou}} | {{baixa/média/alta}} | {{verificar/remover/ajustar | [ASK USER]}} |
|
|
10
|
+
|
|
11
|
+
### Categorias a verificar
|
|
12
|
+
- **Triggers órfãos:** ativos mas sem logs de execução, ou referenciam action/point inexistente.
|
|
13
|
+
- **Schedulers desativados:** `active: false` que parecem importantes.
|
|
14
|
+
- **Achievements inatingíveis:** challenges com regra impossível ou action que não existe.
|
|
15
|
+
- **Endpoints sem uso:** public-endpoints não chamados por scheduler/trigger/página.
|
|
16
|
+
- **Regras conflitantes:** dois objetos com efeitos contraditórios (ex.: dois triggers no mesmo evento creditando o mesmo point).
|
|
17
|
+
- **Métricas órfãs:** points/levels sem leaderboard ou challenge que os utilize.
|
|
18
|
+
|
|
19
|
+
## Extended (Opcional)
|
|
20
|
+
- Riscos de manutenção (scripts longos, lógica duplicada entre triggers).
|
|
21
|
+
- Itens que dependem de confirmação de intenção do usuário (consolidar os `[ASK USER]`).
|
|
22
|
+
|
|
23
|
+
## Evidence
|
|
24
|
+
- `funifier_logs type=trigger|scheduler id=<...>` (para silêncio/erros)
|
|
25
|
+
- Referências cruzadas das Fases 3–4 (qual objeto referencia qual)
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Funifier — Custom Endpoints
|
|
2
|
+
|
|
3
|
+
> Public endpoints em Java/Groovy. Endpoint sem chamador aparente (scheduler/trigger/página) → `CONCERNS.md`.
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
| _id | Rota | Método | Parâmetros esperados | Descrição | Status |
|
|
8
|
+
|-----|------|--------|----------------------|-----------|--------|
|
|
9
|
+
| {{id}} | {{/rota}} | {{GET/POST/...}} | {{params}} | {{o que retorna/faz}} | {{ativo?}} |
|
|
10
|
+
|
|
11
|
+
### Detalhe por endpoint (quando relevante)
|
|
12
|
+
**{{title}}** (`{{_id}}`)
|
|
13
|
+
- Rota / método: `{{método}} {{rota}}`
|
|
14
|
+
- Entrada: {{parâmetros e formato}}
|
|
15
|
+
- Saída / efeito: {{resumo do script}}
|
|
16
|
+
- Consumido por: {{página/scheduler/trigger/sistema externo | [TODO]}}
|
|
17
|
+
|
|
18
|
+
## Extended (Opcional)
|
|
19
|
+
- Autenticação exigida (público vs. token).
|
|
20
|
+
- Endpoints que escrevem em coleções (efeitos colaterais).
|
|
21
|
+
|
|
22
|
+
## Evidence
|
|
23
|
+
- `funifier_list type=public-endpoint`
|
|
24
|
+
- `funifier_get mode=read type=public-endpoint id=<...>`
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Funifier — Custom Pages e Widgets
|
|
2
|
+
|
|
3
|
+
> Páginas custom (Studio) e widgets embutíveis. Documente qual endpoint/aggregate cada um consome.
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
### Custom pages
|
|
8
|
+
| _id | title | Rota | Propósito | Integrações (endpoints/aggregates) |
|
|
9
|
+
|-----|-------|------|-----------|-------------------------------------|
|
|
10
|
+
| {{id}} | {{título}} | {{rota}} | {{para quê serve}} | {{refs}} |
|
|
11
|
+
|
|
12
|
+
### Widgets
|
|
13
|
+
| _id | title | Propósito | Onde é embutido |
|
|
14
|
+
|-----|-------|-----------|-----------------|
|
|
15
|
+
| {{id}} | {{título}} | {{ranking/status/loja/...}} | {{intranet/CRM/LMS/... | [TODO]}} |
|
|
16
|
+
|
|
17
|
+
## Extended (Opcional)
|
|
18
|
+
- Tecnologia da página (AngularJS + Bootstrap, etc.), se relevante.
|
|
19
|
+
- Páginas/widgets órfãos (sem rota de acesso aparente) → também citar em `CONCERNS.md`.
|
|
20
|
+
|
|
21
|
+
## Evidence
|
|
22
|
+
- `funifier_list type=custom-page`
|
|
23
|
+
- `funifier_list type=widget`
|
|
24
|
+
- `funifier_get mode=read type=custom-page id=<...>`
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Funifier — Mecânicas de Jogo
|
|
2
|
+
|
|
3
|
+
> "achievements/badges" = `challenge` e/ou `virtual-good-item` (não há tipo próprio). "missions" = cadeias de challenge ou learning trail — marque `[ASK USER]`.
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
### Pontos (point categories)
|
|
8
|
+
| _id | category | shortName | Tipo (XP/moeda/interna) |
|
|
9
|
+
|-----|----------|-----------|-------------------------|
|
|
10
|
+
| {{id}} | {{category}} | {{short}} | {{tipo}} |
|
|
11
|
+
|
|
12
|
+
### Níveis (levels)
|
|
13
|
+
| _id | level | position | minPoints | Categoria de ponto |
|
|
14
|
+
|-----|-------|----------|-----------|--------------------|
|
|
15
|
+
| {{id}} | {{nome}} | {{pos}} | {{min}} | {{point}} |
|
|
16
|
+
|
|
17
|
+
### Challenges / Achievements
|
|
18
|
+
| _id | challenge | Regras (resumo) | Recompensas | Status |
|
|
19
|
+
|-----|-----------|-----------------|-------------|--------|
|
|
20
|
+
| {{id}} | {{nome}} | {{condições}} | {{points/itens}} | {{ativo?}} |
|
|
21
|
+
|
|
22
|
+
### Actions (comportamentos rastreáveis)
|
|
23
|
+
| _id | action | Atributos | Usada por (challenge/trigger) |
|
|
24
|
+
|-----|--------|-----------|-------------------------------|
|
|
25
|
+
| {{id}} | {{action}} | {{attrs}} | {{refs}} |
|
|
26
|
+
|
|
27
|
+
## Extended (Opcional)
|
|
28
|
+
- **Quizzes:** {{_id, title, grade}} — `[TODO]` se não houver.
|
|
29
|
+
- **Virtual goods:** catálogos e itens ({{_id, amount, active}}), indicando quais são badges.
|
|
30
|
+
- **Missions:** cadeias de challenge identificadas — `[ASK USER]` para confirmar intenção.
|
|
31
|
+
- **Aggregates:** pipelines que alimentam relatórios/dashboards de mecânicas.
|
|
32
|
+
|
|
33
|
+
## Evidence
|
|
34
|
+
- `funifier_list type=point|level|challenge|action|quiz|virtual-good-catalog|virtual-good-item`
|
|
35
|
+
- `funifier_get mode=read type=challenge id=<...>` (para regras completas)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Funifier — Integrações
|
|
2
|
+
|
|
3
|
+
> Webhooks de saída não têm tipo em `funifier_list` — inferir de coleções (`funifier_database`) e de ações HTTP em triggers. É esperado e correto que este doc tenha vários `[TODO]`/`[ASK USER]`.
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
### Websockets
|
|
8
|
+
| _id | title | Propósito | Status |
|
|
9
|
+
|-----|-------|-----------|--------|
|
|
10
|
+
| {{id}} | {{título}} | {{live update/chat/...}} | {{ativo?}} |
|
|
11
|
+
|
|
12
|
+
### Webhooks de saída
|
|
13
|
+
Fonte: coleção descoberta via `funifier_database action=collections` (ex.: `webhook`/`notification`).
|
|
14
|
+
|
|
15
|
+
| Destino | Evento de origem | Coleção/fonte | Autenticação | Status |
|
|
16
|
+
|---------|------------------|---------------|--------------|--------|
|
|
17
|
+
| {{URL/sistema}} | {{evento}} | {{collection}} | {{tipo | [TODO]}} | {{ativo? | [TODO]}} |
|
|
18
|
+
|
|
19
|
+
### Integrações via trigger
|
|
20
|
+
Triggers cujo script chama URLs externas (descobertos no detalhamento):
|
|
21
|
+
|
|
22
|
+
| Trigger _id | Chama | Quando |
|
|
23
|
+
|-------------|-------|--------|
|
|
24
|
+
| {{id}} | {{URL/serviço externo}} | {{entity/event}} |
|
|
25
|
+
|
|
26
|
+
## Extended (Opcional)
|
|
27
|
+
- Auth modules que integram com IdP externo.
|
|
28
|
+
- `ai-knowledge` configurado (bases de conhecimento de IA).
|
|
29
|
+
- Integrações citadas pelo usuário mas não verificáveis via MCP → `[ASK USER]`.
|
|
30
|
+
|
|
31
|
+
## Evidence
|
|
32
|
+
- `funifier_list type=websocket`
|
|
33
|
+
- `funifier_list type=auth-module`
|
|
34
|
+
- `funifier_list type=ai-knowledge`
|
|
35
|
+
- `funifier_database action=collections`
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Funifier — Leaderboards
|
|
2
|
+
|
|
3
|
+
> Rankings configurados. Cite a métrica base por ID (qual `point`/action/atributo). Leaderboard sobre um point inexistente → `CONCERNS.md`.
|
|
4
|
+
|
|
5
|
+
## Core (Obrigatório)
|
|
6
|
+
|
|
7
|
+
| _id | title | Métrica base | Escopo | Período | Regra de empate |
|
|
8
|
+
|-----|-------|--------------|--------|---------|-----------------|
|
|
9
|
+
| {{id}} | {{título}} | {{point/action/attr + id}} | {{global/segmentado}} | {{período}} | {{regra | [TODO]}} |
|
|
10
|
+
|
|
11
|
+
### Detalhe por leaderboard (quando relevante)
|
|
12
|
+
**{{title}}** (`{{_id}}`)
|
|
13
|
+
- Métrica: {{categoria de ponto / action / atributo}} (`{{id da métrica}}`)
|
|
14
|
+
- Escopo: {{global | por team | por segmento}}
|
|
15
|
+
- Janela de tempo: {{contínuo | semanal | mensal | ...}}
|
|
16
|
+
- Critério de desempate: {{descrição | [TODO]}}
|
|
17
|
+
|
|
18
|
+
## Extended (Opcional)
|
|
19
|
+
- Leaderboards alimentados por aggregates específicos.
|
|
20
|
+
- Relação com competições (ranking always-on vs. contest com data de fim).
|
|
21
|
+
|
|
22
|
+
## Evidence
|
|
23
|
+
- `funifier_list type=leaderboard`
|
|
24
|
+
- `funifier_get mode=read type=leaderboard id=<...>`
|