fix: bedrock set model and other fixes (#641)
This commit is contained in:
committed by
Eyal Toledano
parent
0b8f594ac7
commit
87c85d3d66
@@ -509,9 +509,9 @@ function createProjectStructure(addAliases, dryRun, options) {
|
||||
replacements
|
||||
);
|
||||
|
||||
// Copy .taskmasterconfig with project name to NEW location
|
||||
// Copy config.json with project name to NEW location
|
||||
copyTemplateFile(
|
||||
'.taskmasterconfig',
|
||||
'config.json',
|
||||
path.join(targetDir, TASKMASTER_CONFIG_FILE),
|
||||
{
|
||||
...replacements
|
||||
|
||||
@@ -22,6 +22,7 @@ import {
|
||||
isApiKeySet,
|
||||
getOllamaBaseURL,
|
||||
getAzureBaseURL,
|
||||
getBedrockBaseURL,
|
||||
getVertexProjectId,
|
||||
getVertexLocation
|
||||
} from './config-manager.js';
|
||||
@@ -410,6 +411,10 @@ async function _unifiedServiceRunner(serviceType, params) {
|
||||
// For Ollama, use the global Ollama base URL if role-specific URL is not configured
|
||||
baseURL = getOllamaBaseURL(effectiveProjectRoot);
|
||||
log('debug', `Using global Ollama base URL: ${baseURL}`);
|
||||
} else if (providerName?.toLowerCase() === 'bedrock' && !baseURL) {
|
||||
// For Bedrock, use the global Bedrock base URL if role-specific URL is not configured
|
||||
baseURL = getBedrockBaseURL(effectiveProjectRoot);
|
||||
log('debug', `Using global Bedrock base URL: ${baseURL}`);
|
||||
}
|
||||
|
||||
// Get AI parameters for the current role
|
||||
|
||||
@@ -61,7 +61,8 @@ const DEFAULTS = {
|
||||
defaultSubtasks: 5,
|
||||
defaultPriority: 'medium',
|
||||
projectName: 'Task Master',
|
||||
ollamaBaseURL: 'http://localhost:11434/api'
|
||||
ollamaBaseURL: 'http://localhost:11434/api',
|
||||
bedrockBaseURL: 'https://bedrock.us-east-1.amazonaws.com'
|
||||
}
|
||||
};
|
||||
|
||||
@@ -382,6 +383,11 @@ function getAzureBaseURL(explicitRoot = null) {
|
||||
return getGlobalConfig(explicitRoot).azureBaseURL;
|
||||
}
|
||||
|
||||
function getBedrockBaseURL(explicitRoot = null) {
|
||||
// Directly return value from config
|
||||
return getGlobalConfig(explicitRoot).bedrockBaseURL;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the Google Cloud project ID for Vertex AI from configuration
|
||||
* @param {string|null} explicitRoot - Optional explicit path to the project root.
|
||||
@@ -779,6 +785,7 @@ export {
|
||||
getProjectName,
|
||||
getOllamaBaseURL,
|
||||
getAzureBaseURL,
|
||||
getBedrockBaseURL,
|
||||
getParametersForRole,
|
||||
getUserId,
|
||||
// API Key Checkers (still relevant)
|
||||
|
||||
@@ -482,6 +482,11 @@ async function setModel(role, modelId, options = {}) {
|
||||
`Model ID "${modelId}" not found in the Ollama instance. Please verify the model is pulled and available. You can check available models with: curl ${tagsUrl}`
|
||||
);
|
||||
}
|
||||
} else if (providerHint === 'bedrock') {
|
||||
// Set provider without model validation since Bedrock models are managed by AWS
|
||||
determinedProvider = 'bedrock';
|
||||
warningMessage = `Warning: Custom Bedrock model '${modelId}' set. Please ensure the model ID is valid and accessible in your AWS account.`;
|
||||
report('warn', warningMessage);
|
||||
} else {
|
||||
// Invalid provider hint - should not happen
|
||||
throw new Error(`Invalid provider hint received: ${providerHint}`);
|
||||
|
||||
@@ -24,7 +24,10 @@ import {
|
||||
} from './task-manager.js';
|
||||
import { getProjectName, getDefaultSubtasks } from './config-manager.js';
|
||||
import { TASK_STATUS_OPTIONS } from '../../src/constants/task-status.js';
|
||||
import { TASKMASTER_TASKS_FILE } from '../../src/constants/paths.js';
|
||||
import {
|
||||
TASKMASTER_CONFIG_FILE,
|
||||
TASKMASTER_TASKS_FILE
|
||||
} from '../../src/constants/paths.js';
|
||||
import { getTaskMasterVersion } from '../../src/utils/getVersion.js';
|
||||
|
||||
// Create a color gradient for the banner
|
||||
@@ -692,7 +695,7 @@ function displayHelp() {
|
||||
|
||||
configTable.push(
|
||||
[
|
||||
`${chalk.yellow('.taskmasterconfig')}${chalk.reset('')}`,
|
||||
`${chalk.yellow(TASKMASTER_CONFIG_FILE)}${chalk.reset('')}`,
|
||||
`${chalk.white('AI model configuration file (project root)')}${chalk.reset('')}`,
|
||||
`${chalk.dim('Managed by models cmd')}${chalk.reset('')}`
|
||||
],
|
||||
@@ -1856,7 +1859,7 @@ function displayApiKeyStatus(statusReport) {
|
||||
console.log(table.toString());
|
||||
console.log(
|
||||
chalk.gray(
|
||||
' Note: Some providers (e.g., Azure, Ollama) may require additional endpoint configuration in .taskmasterconfig.'
|
||||
` Note: Some providers (e.g., Azure, Ollama) may require additional endpoint configuration in ${TASKMASTER_CONFIG_FILE}.`
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user