agent-dj 0.1.0 → 0.1.2
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/dist/cli.js +139 -181
- package/dist/server.js +119 -179
- package/package.json +1 -1
- package/web/dist/assets/index-CVUo4o24.js +348 -0
- package/web/dist/assets/{index-C_p3GG7h.css → index-MHuCb1sM.css} +1 -1
- package/web/dist/index.html +2 -2
- package/web/dist/assets/index-DkpIwp3f.js +0 -348
package/dist/server.js
CHANGED
|
@@ -270980,6 +270980,24 @@ async function getOrCreateProvider(config) {
|
|
|
270980
270980
|
baseURL: config.baseUrl ?? "http://localhost:11434/v1"
|
|
270981
270981
|
});
|
|
270982
270982
|
break;
|
|
270983
|
+
case "deepseek":
|
|
270984
|
+
instance = createOpenAI({
|
|
270985
|
+
apiKey: config.apiKey,
|
|
270986
|
+
baseURL: "https://api.deepseek.com/v1"
|
|
270987
|
+
});
|
|
270988
|
+
break;
|
|
270989
|
+
case "xai":
|
|
270990
|
+
instance = createOpenAI({
|
|
270991
|
+
apiKey: config.apiKey,
|
|
270992
|
+
baseURL: "https://api.x.ai/v1"
|
|
270993
|
+
});
|
|
270994
|
+
break;
|
|
270995
|
+
case "mistral":
|
|
270996
|
+
instance = createOpenAI({
|
|
270997
|
+
apiKey: config.apiKey,
|
|
270998
|
+
baseURL: "https://api.mistral.ai/v1"
|
|
270999
|
+
});
|
|
271000
|
+
break;
|
|
270983
271001
|
default:
|
|
270984
271002
|
throw new Error(`Unsupported provider: ${config.provider}`);
|
|
270985
271003
|
}
|
|
@@ -270987,7 +271005,7 @@ async function getOrCreateProvider(config) {
|
|
|
270987
271005
|
return instance;
|
|
270988
271006
|
}
|
|
270989
271007
|
function getLanguageModel(config, modelId) {
|
|
270990
|
-
const model = modelId
|
|
271008
|
+
const model = modelId || config.model || getDefaultModel(config.provider);
|
|
270991
271009
|
if (config.provider === "anthropic" && config.authType === "session_token") {
|
|
270992
271010
|
_lastSessionTokenSupportsTools = false;
|
|
270993
271011
|
if (isClaudeCliAvailable()) {
|
|
@@ -271023,7 +271041,10 @@ function getDefaultModel(provider) {
|
|
|
271023
271041
|
openai: "gpt-4o",
|
|
271024
271042
|
google: "gemini-2.0-flash",
|
|
271025
271043
|
groq: "llama-3.3-70b-versatile",
|
|
271026
|
-
ollama: "llama3.2"
|
|
271044
|
+
ollama: "llama3.2",
|
|
271045
|
+
deepseek: "deepseek-chat",
|
|
271046
|
+
xai: "grok-3",
|
|
271047
|
+
mistral: "mistral-large-latest"
|
|
271027
271048
|
};
|
|
271028
271049
|
return defaults[provider];
|
|
271029
271050
|
}
|
|
@@ -272494,7 +272515,19 @@ var MODEL_CATALOG = [
|
|
|
272494
272515
|
{ id: "llama-3.1-8b-instant", name: "Llama 3.1 8B", provider: "groq", contextWindow: 128e3, costTier: "cheap", supportsTools: true, supportsVision: false },
|
|
272495
272516
|
// Ollama
|
|
272496
272517
|
{ id: "llama3.2", name: "Llama 3.2", provider: "ollama", contextWindow: 128e3, costTier: "cheap", supportsTools: true, supportsVision: false },
|
|
272497
|
-
{ id: "mistral", name: "Mistral", provider: "ollama", contextWindow: 32e3, costTier: "cheap", supportsTools: true, supportsVision: false }
|
|
272518
|
+
{ id: "mistral", name: "Mistral", provider: "ollama", contextWindow: 32e3, costTier: "cheap", supportsTools: true, supportsVision: false },
|
|
272519
|
+
// DeepSeek
|
|
272520
|
+
{ id: "deepseek-chat", name: "DeepSeek Chat", provider: "deepseek", contextWindow: 128e3, costTier: "cheap", supportsTools: true, supportsVision: true },
|
|
272521
|
+
{ id: "deepseek-reasoner", name: "DeepSeek Reasoner", provider: "deepseek", contextWindow: 128e3, costTier: "standard", supportsTools: false, supportsVision: false },
|
|
272522
|
+
// xAI
|
|
272523
|
+
{ id: "grok-3", name: "Grok 3", provider: "xai", contextWindow: 131072, costTier: "premium", supportsTools: true, supportsVision: true },
|
|
272524
|
+
{ id: "grok-3-mini", name: "Grok 3 Mini", provider: "xai", contextWindow: 131072, costTier: "standard", supportsTools: true, supportsVision: true },
|
|
272525
|
+
{ id: "grok-2", name: "Grok 2", provider: "xai", contextWindow: 131072, costTier: "standard", supportsTools: true, supportsVision: true },
|
|
272526
|
+
{ id: "grok-2-mini", name: "Grok 2 Mini", provider: "xai", contextWindow: 131072, costTier: "cheap", supportsTools: true, supportsVision: false },
|
|
272527
|
+
// Mistral
|
|
272528
|
+
{ id: "mistral-large-latest", name: "Mistral Large", provider: "mistral", contextWindow: 128e3, costTier: "standard", supportsTools: true, supportsVision: false },
|
|
272529
|
+
{ id: "codestral-latest", name: "Codestral", provider: "mistral", contextWindow: 256e3, costTier: "cheap", supportsTools: true, supportsVision: false },
|
|
272530
|
+
{ id: "mistral-small-latest", name: "Mistral Small", provider: "mistral", contextWindow: 128e3, costTier: "cheap", supportsTools: true, supportsVision: false }
|
|
272498
272531
|
];
|
|
272499
272532
|
function getModelInfo(modelId) {
|
|
272500
272533
|
return MODEL_CATALOG.find((m) => m.id === modelId);
|
|
@@ -273669,6 +273702,18 @@ settingsRoutes.post("/providers", async (c) => {
|
|
|
273669
273702
|
saveConfig(updated);
|
|
273670
273703
|
return c.json({ ok: true });
|
|
273671
273704
|
});
|
|
273705
|
+
settingsRoutes.delete("/providers/:name", (c) => {
|
|
273706
|
+
const name = c.req.param("name");
|
|
273707
|
+
const config = loadConfig();
|
|
273708
|
+
const idx = config.providers.findIndex((p) => p.provider === name);
|
|
273709
|
+
if (idx < 0) return c.json({ error: "Provider not found" }, 404);
|
|
273710
|
+
if (config.defaultProvider === name) {
|
|
273711
|
+
return c.json({ error: "Cannot delete the default provider. Set another as default first." }, 400);
|
|
273712
|
+
}
|
|
273713
|
+
config.providers.splice(idx, 1);
|
|
273714
|
+
saveConfig(config);
|
|
273715
|
+
return c.json({ ok: true });
|
|
273716
|
+
});
|
|
273672
273717
|
settingsRoutes.get("/system", (c) => {
|
|
273673
273718
|
const stats = getSystemStats();
|
|
273674
273719
|
return c.json(stats);
|
|
@@ -273735,214 +273780,109 @@ var DEFAULT_CATALOG = {
|
|
|
273735
273780
|
lastUpdated: (/* @__PURE__ */ new Date()).toISOString(),
|
|
273736
273781
|
apps: [
|
|
273737
273782
|
{
|
|
273738
|
-
id: "
|
|
273739
|
-
name: "
|
|
273740
|
-
bundleId: "com.
|
|
273741
|
-
version: "1.
|
|
273742
|
-
category: "
|
|
273743
|
-
description: "
|
|
273744
|
-
shortDescription: "AI-powered
|
|
273783
|
+
id: "tryonai",
|
|
273784
|
+
name: "Dressy - TryOnAI",
|
|
273785
|
+
bundleId: "com.tryonai.dzhumabaevs.app",
|
|
273786
|
+
version: "1.0.0",
|
|
273787
|
+
category: "lifestyle",
|
|
273788
|
+
description: "Virtual try-on powered by AI. Upload a photo and see how different outfits look on you before buying. Uses advanced AI to realistically overlay clothing onto your body with accurate fit and drape.",
|
|
273789
|
+
shortDescription: "AI-powered virtual clothing try-on",
|
|
273745
273790
|
developer: "Bakyt",
|
|
273746
|
-
iconUrl: "/
|
|
273791
|
+
iconUrl: "http://65.109.4.13/store/icons/tryonai.png",
|
|
273747
273792
|
screenshots: [],
|
|
273748
|
-
sizeMb:
|
|
273749
|
-
minIosVersion: "
|
|
273750
|
-
releaseDate: "
|
|
273793
|
+
sizeMb: 35,
|
|
273794
|
+
minIosVersion: "17.0",
|
|
273795
|
+
releaseDate: "2025-01-15",
|
|
273751
273796
|
lastUpdated: "2025-03-10",
|
|
273752
|
-
changelog: "
|
|
273753
|
-
installMethods: ["quick_install", "altstore"],
|
|
273754
|
-
downloadUrl: "",
|
|
273755
|
-
status: "available",
|
|
273756
|
-
tags: ["ai", "accessibility", "camera", "asl"]
|
|
273757
|
-
},
|
|
273758
|
-
{
|
|
273759
|
-
id: "caloriessnap",
|
|
273760
|
-
name: "CaloriesSnap",
|
|
273761
|
-
bundleId: "com.bakyt.caloriessnap",
|
|
273762
|
-
version: "2.0.1",
|
|
273763
|
-
category: "health",
|
|
273764
|
-
description: "Snap a photo of your meal and instantly get calorie counts and macro breakdowns. Uses on-device AI to identify foods, portion sizes, and nutritional information. Track your daily intake with beautiful charts.",
|
|
273765
|
-
shortDescription: "AI calorie tracking from photos",
|
|
273766
|
-
developer: "Bakyt",
|
|
273767
|
-
iconUrl: "/api/apps/icon/caloriessnap",
|
|
273768
|
-
screenshots: [],
|
|
273769
|
-
sizeMb: 38,
|
|
273770
|
-
minIosVersion: "16.0",
|
|
273771
|
-
releaseDate: "2024-04-20",
|
|
273772
|
-
lastUpdated: "2025-02-28",
|
|
273773
|
-
changelog: "Improved food recognition, added meal history export",
|
|
273774
|
-
installMethods: ["quick_install", "altstore", "testflight"],
|
|
273775
|
-
downloadUrl: "",
|
|
273776
|
-
status: "available",
|
|
273777
|
-
tags: ["ai", "health", "nutrition", "camera"]
|
|
273778
|
-
},
|
|
273779
|
-
{
|
|
273780
|
-
id: "vibelens",
|
|
273781
|
-
name: "VibeLens",
|
|
273782
|
-
bundleId: "com.bakyt.vibelens",
|
|
273783
|
-
version: "1.5.0",
|
|
273784
|
-
category: "photography",
|
|
273785
|
-
description: "Transform your photos with AI-powered mood filters. VibeLens analyzes the emotional tone of your image and applies cinematic color grading to match. Choose from 30+ vibe presets or let AI pick the perfect one.",
|
|
273786
|
-
shortDescription: "AI mood-based photo filters",
|
|
273787
|
-
developer: "Bakyt",
|
|
273788
|
-
iconUrl: "/api/apps/icon/vibelens",
|
|
273789
|
-
screenshots: [],
|
|
273790
|
-
sizeMb: 52,
|
|
273791
|
-
minIosVersion: "16.0",
|
|
273792
|
-
releaseDate: "2024-08-01",
|
|
273793
|
-
lastUpdated: "2025-01-15",
|
|
273794
|
-
changelog: "New film grain presets, batch processing support",
|
|
273797
|
+
changelog: "Initial release",
|
|
273795
273798
|
installMethods: ["quick_install", "altstore"],
|
|
273796
|
-
downloadUrl: "",
|
|
273799
|
+
downloadUrl: "http://65.109.4.13/store/ipas/tryonai-latest.ipa",
|
|
273797
273800
|
status: "available",
|
|
273798
|
-
tags: ["ai", "
|
|
273801
|
+
tags: ["ai", "fashion", "camera", "ar"]
|
|
273799
273802
|
},
|
|
273800
273803
|
{
|
|
273801
|
-
id: "
|
|
273802
|
-
name: "
|
|
273803
|
-
bundleId: "com.
|
|
273804
|
-
version: "1.
|
|
273805
|
-
category: "health",
|
|
273806
|
-
description: "Real-time pose analysis for yoga, workouts, and physical therapy. Uses your camera to track body position and provides instant feedback on form. Includes guided routines and progress tracking.",
|
|
273807
|
-
shortDescription: "AI pose analysis for fitness",
|
|
273808
|
-
developer: "Bakyt",
|
|
273809
|
-
iconUrl: "/api/apps/icon/posescope",
|
|
273810
|
-
screenshots: [],
|
|
273811
|
-
sizeMb: 41,
|
|
273812
|
-
minIosVersion: "16.0",
|
|
273813
|
-
releaseDate: "2024-09-12",
|
|
273814
|
-
lastUpdated: "2025-02-05",
|
|
273815
|
-
changelog: "Added 20 new yoga poses, improved joint detection",
|
|
273816
|
-
installMethods: ["quick_install", "altstore"],
|
|
273817
|
-
downloadUrl: "",
|
|
273818
|
-
status: "available",
|
|
273819
|
-
tags: ["ai", "fitness", "yoga", "camera", "health"]
|
|
273820
|
-
},
|
|
273821
|
-
{
|
|
273822
|
-
id: "soundsig",
|
|
273823
|
-
name: "SoundSig",
|
|
273824
|
-
bundleId: "com.bakyt.soundsig",
|
|
273825
|
-
version: "1.0.3",
|
|
273804
|
+
id: "fakecall",
|
|
273805
|
+
name: "Alibi",
|
|
273806
|
+
bundleId: "com.dzhumabaevs.fakecall",
|
|
273807
|
+
version: "1.2",
|
|
273826
273808
|
category: "utilities",
|
|
273827
|
-
description: "
|
|
273828
|
-
shortDescription: "
|
|
273809
|
+
description: "Schedule realistic fake phone calls to get out of awkward situations. Customize caller name, photo, ringtone, and timing. The call screen looks exactly like a real incoming call \u2014 nobody will know the difference.",
|
|
273810
|
+
shortDescription: "Realistic fake incoming calls on demand",
|
|
273829
273811
|
developer: "Bakyt",
|
|
273830
|
-
iconUrl: "/
|
|
273812
|
+
iconUrl: "http://65.109.4.13/store/icons/fakecall.png",
|
|
273831
273813
|
screenshots: [],
|
|
273832
|
-
sizeMb:
|
|
273833
|
-
minIosVersion: "
|
|
273814
|
+
sizeMb: 15,
|
|
273815
|
+
minIosVersion: "17.0",
|
|
273834
273816
|
releaseDate: "2024-11-01",
|
|
273835
|
-
lastUpdated: "2025-01-20",
|
|
273836
|
-
changelog: "Added 200+ new sound categories",
|
|
273837
|
-
installMethods: ["quick_install", "altstore"],
|
|
273838
|
-
downloadUrl: "",
|
|
273839
|
-
status: "available",
|
|
273840
|
-
tags: ["ai", "audio", "identification", "accessibility"]
|
|
273841
|
-
},
|
|
273842
|
-
{
|
|
273843
|
-
id: "aura",
|
|
273844
|
-
name: "Aura",
|
|
273845
|
-
bundleId: "com.bakyt.aura",
|
|
273846
|
-
version: "2.1.0",
|
|
273847
|
-
category: "lifestyle",
|
|
273848
|
-
description: "Your personal mood and energy tracker. Aura uses AI to analyze your daily patterns \u2014 sleep, activity, weather, and screen time \u2014 to predict your energy levels and suggest optimal times for focus, exercise, and rest.",
|
|
273849
|
-
shortDescription: "AI-powered mood & energy tracker",
|
|
273850
|
-
developer: "Bakyt",
|
|
273851
|
-
iconUrl: "/api/apps/icon/aura",
|
|
273852
|
-
screenshots: [],
|
|
273853
|
-
sizeMb: 22,
|
|
273854
|
-
minIosVersion: "16.0",
|
|
273855
|
-
releaseDate: "2024-03-05",
|
|
273856
|
-
lastUpdated: "2025-03-01",
|
|
273857
|
-
changelog: "New sleep quality insights, widget support",
|
|
273858
|
-
installMethods: ["quick_install", "altstore", "testflight"],
|
|
273859
|
-
downloadUrl: "",
|
|
273860
|
-
status: "available",
|
|
273861
|
-
tags: ["ai", "wellness", "mood", "tracking"]
|
|
273862
|
-
},
|
|
273863
|
-
{
|
|
273864
|
-
id: "sightx",
|
|
273865
|
-
name: "SightX",
|
|
273866
|
-
bundleId: "com.bakyt.sightx",
|
|
273867
|
-
version: "1.3.0",
|
|
273868
|
-
category: "utilities",
|
|
273869
|
-
description: "Point your camera at any object and get instant information. SightX identifies plants, animals, landmarks, products, and text in 40+ languages. Save discoveries to your personal visual encyclopedia.",
|
|
273870
|
-
shortDescription: "Visual search & object identification",
|
|
273871
|
-
developer: "Bakyt",
|
|
273872
|
-
iconUrl: "/api/apps/icon/sightx",
|
|
273873
|
-
screenshots: [],
|
|
273874
|
-
sizeMb: 56,
|
|
273875
|
-
minIosVersion: "16.0",
|
|
273876
|
-
releaseDate: "2024-05-18",
|
|
273877
273817
|
lastUpdated: "2025-02-20",
|
|
273878
|
-
changelog: "Added
|
|
273818
|
+
changelog: "v1.2: Added custom ringtones and contact photos",
|
|
273879
273819
|
installMethods: ["quick_install", "altstore"],
|
|
273880
|
-
downloadUrl: "",
|
|
273820
|
+
downloadUrl: "http://65.109.4.13/store/ipas/fakecall-latest.ipa",
|
|
273881
273821
|
status: "available",
|
|
273882
|
-
tags: ["
|
|
273822
|
+
tags: ["utility", "prank", "social"]
|
|
273883
273823
|
},
|
|
273884
273824
|
{
|
|
273885
|
-
id: "
|
|
273886
|
-
name: "
|
|
273887
|
-
bundleId: "com.
|
|
273888
|
-
version: "1.0.
|
|
273825
|
+
id: "soundvault",
|
|
273826
|
+
name: "SoundVault",
|
|
273827
|
+
bundleId: "com.dzhumabaevs.soundvault",
|
|
273828
|
+
version: "1.0.2",
|
|
273889
273829
|
category: "entertainment",
|
|
273890
|
-
description: "
|
|
273891
|
-
shortDescription: "
|
|
273830
|
+
description: "Your personal sound library and audio manager. Record, organize, and play back sounds with a beautiful interface. Create soundboards, tag your recordings, and access them instantly. Perfect for musicians, content creators, and sound enthusiasts.",
|
|
273831
|
+
shortDescription: "Personal sound library and audio manager",
|
|
273892
273832
|
developer: "Bakyt",
|
|
273893
|
-
iconUrl: "/
|
|
273833
|
+
iconUrl: "http://65.109.4.13/store/icons/soundvault.png",
|
|
273894
273834
|
screenshots: [],
|
|
273895
|
-
sizeMb:
|
|
273896
|
-
minIosVersion: "
|
|
273897
|
-
releaseDate: "
|
|
273898
|
-
lastUpdated: "2025-
|
|
273899
|
-
changelog: "
|
|
273835
|
+
sizeMb: 20,
|
|
273836
|
+
minIosVersion: "17.0",
|
|
273837
|
+
releaseDate: "2024-12-01",
|
|
273838
|
+
lastUpdated: "2025-01-15",
|
|
273839
|
+
changelog: "v1.0.2: Bug fixes and performance improvements",
|
|
273900
273840
|
installMethods: ["quick_install", "altstore"],
|
|
273901
|
-
downloadUrl: "",
|
|
273841
|
+
downloadUrl: "http://65.109.4.13/store/ipas/soundvault-latest.ipa",
|
|
273902
273842
|
status: "available",
|
|
273903
|
-
tags: ["
|
|
273843
|
+
tags: ["audio", "music", "recording", "creative"]
|
|
273904
273844
|
},
|
|
273905
273845
|
{
|
|
273906
|
-
id: "
|
|
273907
|
-
name: "
|
|
273908
|
-
bundleId: "com.
|
|
273909
|
-
version: "1.
|
|
273846
|
+
id: "pianomaster",
|
|
273847
|
+
name: "PianoMaster",
|
|
273848
|
+
bundleId: "com.dzhumabaevs.pianomaster",
|
|
273849
|
+
version: "1.0",
|
|
273910
273850
|
category: "education",
|
|
273911
|
-
description: "
|
|
273912
|
-
shortDescription: "
|
|
273851
|
+
description: "Learn to play piano with interactive lessons and real-time feedback. Follow along with guided tutorials, practice scales and chords, and track your progress. Features a beautiful on-screen keyboard with realistic sound.",
|
|
273852
|
+
shortDescription: "Interactive piano learning app",
|
|
273913
273853
|
developer: "Bakyt",
|
|
273914
|
-
iconUrl: "/
|
|
273854
|
+
iconUrl: "http://65.109.4.13/store/icons/pianomaster.png",
|
|
273915
273855
|
screenshots: [],
|
|
273916
|
-
sizeMb:
|
|
273917
|
-
minIosVersion: "
|
|
273918
|
-
releaseDate: "
|
|
273919
|
-
lastUpdated: "2025-
|
|
273920
|
-
changelog: "
|
|
273856
|
+
sizeMb: 25,
|
|
273857
|
+
minIosVersion: "17.0",
|
|
273858
|
+
releaseDate: "2025-02-01",
|
|
273859
|
+
lastUpdated: "2025-03-01",
|
|
273860
|
+
changelog: "Initial release",
|
|
273921
273861
|
installMethods: ["quick_install", "altstore"],
|
|
273922
|
-
downloadUrl: "",
|
|
273862
|
+
downloadUrl: "http://65.109.4.13/store/ipas/pianomaster-latest.ipa",
|
|
273923
273863
|
status: "available",
|
|
273924
|
-
tags: ["
|
|
273864
|
+
tags: ["music", "piano", "education", "learning"]
|
|
273925
273865
|
},
|
|
273926
273866
|
{
|
|
273927
|
-
id: "
|
|
273928
|
-
name: "
|
|
273929
|
-
bundleId: "com.
|
|
273930
|
-
version: "1.
|
|
273931
|
-
category: "
|
|
273932
|
-
description: "
|
|
273933
|
-
shortDescription: "
|
|
273867
|
+
id: "metaminor",
|
|
273868
|
+
name: "MetaMinor",
|
|
273869
|
+
bundleId: "com.dzhumabaevsz.metaminor",
|
|
273870
|
+
version: "1.0",
|
|
273871
|
+
category: "utilities",
|
|
273872
|
+
description: "View and edit metadata for your photos, videos, and files. MetaMinor lets you inspect EXIF data, GPS coordinates, timestamps, camera settings, and more. Batch edit metadata, strip location data for privacy, and export clean files.",
|
|
273873
|
+
shortDescription: "Photo & file metadata viewer and editor",
|
|
273934
273874
|
developer: "Bakyt",
|
|
273935
|
-
iconUrl: "/
|
|
273875
|
+
iconUrl: "http://65.109.4.13/store/icons/metaminor.png",
|
|
273936
273876
|
screenshots: [],
|
|
273937
|
-
sizeMb:
|
|
273938
|
-
minIosVersion: "
|
|
273939
|
-
releaseDate: "
|
|
273940
|
-
lastUpdated: "2025-
|
|
273941
|
-
changelog: "
|
|
273942
|
-
installMethods: ["quick_install", "altstore"
|
|
273943
|
-
downloadUrl: "",
|
|
273877
|
+
sizeMb: 12,
|
|
273878
|
+
minIosVersion: "17.0",
|
|
273879
|
+
releaseDate: "2025-01-20",
|
|
273880
|
+
lastUpdated: "2025-02-10",
|
|
273881
|
+
changelog: "Initial release",
|
|
273882
|
+
installMethods: ["quick_install", "altstore"],
|
|
273883
|
+
downloadUrl: "http://65.109.4.13/store/ipas/metaminor-latest.ipa",
|
|
273944
273884
|
status: "available",
|
|
273945
|
-
tags: ["
|
|
273885
|
+
tags: ["utility", "metadata", "photos", "privacy"]
|
|
273946
273886
|
}
|
|
273947
273887
|
]
|
|
273948
273888
|
};
|
|
@@ -273952,7 +273892,7 @@ import { readFileSync as readFileSync5, existsSync as existsSync4 } from "fs";
|
|
|
273952
273892
|
import { join as join7 } from "path";
|
|
273953
273893
|
import { homedir as homedir3 } from "os";
|
|
273954
273894
|
var appsRoutes = new Hono8();
|
|
273955
|
-
var CATALOG_URL = process.env.DJAGENT_CATALOG_URL || "";
|
|
273895
|
+
var CATALOG_URL = process.env.DJAGENT_CATALOG_URL || "http://65.109.4.13/store/catalog.json";
|
|
273956
273896
|
var LOCAL_CATALOG_PATH = join7(homedir3(), ".agent-dj", "catalog.json");
|
|
273957
273897
|
var cachedCatalog = DEFAULT_CATALOG;
|
|
273958
273898
|
var lastFetchTime = 0;
|
package/package.json
CHANGED