[**@s4ai/core Documentation v0.3.23**](../../../README.md)

***

[@s4ai/core Documentation](../../../modules.md) / [autonomous/autonomous-loop](../README.md) / default

# Class: default

Defined in: autonomous/autonomous-loop.js:8

## Constructors

### Constructor

> **new default**(`config?`): `AutonomousLoop`

Defined in: autonomous/autonomous-loop.js:9

#### Parameters

##### config?

#### Returns

`AutonomousLoop`

## Properties

### components

> **components**: `Map`\<`any`, `any`\>

Defined in: autonomous/autonomous-loop.js:30

***

### config

> **config**: `object`

Defined in: autonomous/autonomous-loop.js:10

#### adaptiveThrottling

> **adaptiveThrottling**: `boolean`

#### evolutionThreshold

> **evolutionThreshold**: `any`

#### loopInterval

> **loopInterval**: `any`

#### maxConsecutiveFailures

> **maxConsecutiveFailures**: `any`

***

### cycleMetrics

> **cycleMetrics**: `any`[]

Defined in: autonomous/autonomous-loop.js:32

***

### evolutionHistory

> **evolutionHistory**: `any`[]

Defined in: autonomous/autonomous-loop.js:31

***

### state

> **state**: `object`

Defined in: autonomous/autonomous-loop.js:17

#### consecutiveFailures

> **consecutiveFailures**: `number` = `0`

#### evolutionScore

> **evolutionScore**: `number` = `0`

#### iteration

> **iteration**: `number` = `0`

#### lastSuccess

> **lastSuccess**: `null` = `null`

#### performance

> **performance**: `object`

##### performance.avgCycleTime

> **avgCycleTime**: `number` = `0`

##### performance.successRate

> **successRate**: `number` = `0`

##### performance.totalCycles

> **totalCycles**: `number` = `0`

#### running

> **running**: `boolean` = `false`

## Methods

### assessComponent()

> **assessComponent**(`name`, `component`): `Promise`\<\{ `active`: `boolean`; `health`: `number`; `lastExecution`: `any`; `name`: `any`; `successRate`: `number`; \}\>

Defined in: autonomous/autonomous-loop.js:219

Assess a single component

#### Parameters

##### name

`any`

##### component

`any`

#### Returns

`Promise`\<\{ `active`: `boolean`; `health`: `number`; `lastExecution`: `any`; `name`: `any`; `successRate`: `number`; \}\>

***

### calculateWaitTime()

> **calculateWaitTime**(`cycleTime`): `any`

Defined in: autonomous/autonomous-loop.js:610

Calculate adaptive wait time

#### Parameters

##### cycleTime

`any`

#### Returns

`any`

***

### conductResearch()

> **conductResearch**(`needs`): `Promise`\<`any`[]\>

Defined in: autonomous/autonomous-loop.js:404

Conduct research

#### Parameters

##### needs

`any`

#### Returns

`Promise`\<`any`[]\>

***

### enterRecoveryMode()

> **enterRecoveryMode**(): `Promise`\<`void`\>

Defined in: autonomous/autonomous-loop.js:652

Enter recovery mode after consecutive failures

#### Returns

`Promise`\<`void`\>

***

### executeAction()

> **executeAction**(`decision`): `Promise`\<\{ `action`: `any`; `executed`: `boolean`; `target`: `any`; `timestamp`: `number`; \}\>

Defined in: autonomous/autonomous-loop.js:520

Execute a single action

#### Parameters

##### decision

`any`

#### Returns

`Promise`\<\{ `action`: `any`; `executed`: `boolean`; `target`: `any`; `timestamp`: `number`; \}\>

***

### executeEvolutionActions()

> **executeEvolutionActions**(`decisions`): `Promise`\<(\{ `decision`: `any`; `error?`: `undefined`; `result`: \{ `action`: `any`; `executed`: `boolean`; `target`: `any`; `timestamp`: `number`; \}; `success`: `boolean`; `timestamp`: `number`; \} \| \{ `decision`: `any`; `error`: `any`; `result?`: `undefined`; `success`: `boolean`; `timestamp`: `number`; \})[]\>

Defined in: autonomous/autonomous-loop.js:483

Execute evolution actions

#### Parameters

##### decisions

`any`

#### Returns

`Promise`\<(\{ `decision`: `any`; `error?`: `undefined`; `result`: \{ `action`: `any`; `executed`: `boolean`; `target`: `any`; `timestamp`: `number`; \}; `success`: `boolean`; `timestamp`: `number`; \} \| \{ `decision`: `any`; `error`: `any`; `result?`: `undefined`; `success`: `boolean`; `timestamp`: `number`; \})[]\>

***

### executeIteration()

> **executeIteration**(): `Promise`\<\{ `actions`: `never`[]; `decisions`: `never`[]; `improvements`: `never`[]; `number`: `number`; `research`: `never`[]; `timestamp`: `number`; \}\>

Defined in: autonomous/autonomous-loop.js:120

Execute one iteration of the autonomous loop

#### Returns

`Promise`\<\{ `actions`: `never`[]; `decisions`: `never`[]; `improvements`: `never`[]; `number`: `number`; `research`: `never`[]; `timestamp`: `number`; \}\>

***

### exportState()

> **exportState**(): `object`

Defined in: autonomous/autonomous-loop.js:722

Export state for persistence

#### Returns

`object`

##### cycleMetrics

> **cycleMetrics**: `any`[]

##### evolutionHistory

> **evolutionHistory**: `any`[]

##### state

> **state**: `object`

###### state.consecutiveFailures

> **consecutiveFailures**: `number` = `0`

###### state.evolutionScore

> **evolutionScore**: `number` = `0`

###### state.iteration

> **iteration**: `number` = `0`

###### state.lastSuccess

> **lastSuccess**: `null` = `null`

###### state.performance

> **performance**: `object`

###### state.performance.avgCycleTime

> **avgCycleTime**: `number` = `0`

###### state.performance.successRate

> **successRate**: `number` = `0`

###### state.performance.totalCycles

> **totalCycles**: `number` = `0`

###### state.running

> **running**: `boolean` = `false`

##### timestamp

> **timestamp**: `number`

***

### getComponentMaturity()

> **getComponentMaturity**(`component`): `"stable"` \| `"mature"` \| `"developing"` \| `"experimental"`

Defined in: autonomous/autonomous-loop.js:286

Get component maturity level

#### Parameters

##### component

`any`

#### Returns

`"stable"` \| `"mature"` \| `"developing"` \| `"experimental"`

***

### getComponentType()

> **getComponentType**(`name`): `any`

Defined in: autonomous/autonomous-loop.js:271

Get component type

#### Parameters

##### name

`any`

#### Returns

`any`

***

### getEvolutionHistory()

> **getEvolutionHistory**(`limit?`): `any`[]

Defined in: autonomous/autonomous-loop.js:715

Get evolution history

#### Parameters

##### limit?

`number` = `10`

#### Returns

`any`[]

***

### getStatus()

> **getStatus**(): `object`

Defined in: autonomous/autonomous-loop.js:700

Get loop status

#### Returns

`object`

##### componentCount

> **componentCount**: `number`

##### consecutiveFailures

> **consecutiveFailures**: `number`

##### evolutionHistorySize

> **evolutionHistorySize**: `number`

##### iteration

> **iteration**: `number`

##### performance

> **performance**: `object`

###### performance.avgCycleTime

> **avgCycleTime**: `number` = `0`

###### performance.successRate

> **successRate**: `number` = `0`

###### performance.totalCycles

> **totalCycles**: `number` = `0`

##### running

> **running**: `boolean`

##### uptime

> **uptime**: `number`

***

### identifyCapabilities()

> **identifyCapabilities**(): `object`[]

Defined in: autonomous/autonomous-loop.js:252

Identify current capabilities

#### Returns

`object`[]

***

### identifyGaps()

> **identifyGaps**(`assessment`): (\{ `capability?`: `undefined`; `component`: `string`; `description`: `string`; `severity`: `string`; `type`: `string`; \} \| \{ `capability`: `string`; `component?`: `undefined`; `description`: `string`; `severity`: `string`; `type`: `string`; \})[]

Defined in: autonomous/autonomous-loop.js:298

Identify gaps in capabilities

#### Parameters

##### assessment

`any`

#### Returns

(\{ `capability?`: `undefined`; `component`: `string`; `description`: `string`; `severity`: `string`; `type`: `string`; \} \| \{ `capability`: `string`; `component?`: `undefined`; `description`: `string`; `severity`: `string`; `type`: `string`; \})[]

***

### identifyOpportunities()

> **identifyOpportunities**(`assessment`): (\{ `component`: `string`; `description`: `string`; `priority`: `string`; `type`: `string`; \} \| \{ `component?`: `undefined`; `description`: `string`; `priority`: `string`; `type`: `string`; \})[]

Defined in: autonomous/autonomous-loop.js:334

Identify improvement opportunities

#### Parameters

##### assessment

`any`

#### Returns

(\{ `component`: `string`; `description`: `string`; `priority`: `string`; `type`: `string`; \} \| \{ `component?`: `undefined`; `description`: `string`; `priority`: `string`; `type`: `string`; \})[]

***

### identifyResearchNeeds()

> **identifyResearchNeeds**(`assessment`): `object`[]

Defined in: autonomous/autonomous-loop.js:364

Identify research needs

#### Parameters

##### assessment

`any`

#### Returns

`object`[]

***

### importState()

> **importState**(`data`): `void`

Defined in: autonomous/autonomous-loop.js:734

Import state from persistence

#### Parameters

##### data

`any`

#### Returns

`void`

***

### loop()

> **loop**(): `Promise`\<`void`\>

Defined in: autonomous/autonomous-loop.js:71

Main autonomous loop

#### Returns

`Promise`\<`void`\>

***

### makeEvolutionDecisions()

> **makeEvolutionDecisions**(`assessment`, `research`): `Promise`\<`any`[]\>

Defined in: autonomous/autonomous-loop.js:433

Make evolution decisions

#### Parameters

##### assessment

`any`

##### research

`any`

#### Returns

`Promise`\<`any`[]\>

***

### performSelfAssessment()

> **performSelfAssessment**(): `Promise`\<\{ `capabilities`: `never`[]; `components`: \{ \}; `gaps`: `never`[]; `opportunities`: `never`[]; `systemHealth`: `number`; `timestamp`: `number`; \}\>

Defined in: autonomous/autonomous-loop.js:167

Perform self-assessment

#### Returns

`Promise`\<\{ `capabilities`: `never`[]; `components`: \{ \}; `gaps`: `never`[]; `opportunities`: `never`[]; `systemHealth`: `number`; `timestamp`: `number`; \}\>

***

### recordCycleMetric()

> **recordCycleMetric**(`cycleTime`, `success`): `void`

Defined in: autonomous/autonomous-loop.js:629

Record cycle metrics

#### Parameters

##### cycleTime

`any`

##### success

`any`

#### Returns

`void`

***

### reflectOnIteration()

> **reflectOnIteration**(`iteration`): `Promise`\<\{ `improvements`: `never`[]; `learnings`: `never`[]; `nextFocus`: `never`[]; `successRate`: `number`; \}\>

Defined in: autonomous/autonomous-loop.js:567

Reflect on iteration outcomes

#### Parameters

##### iteration

`any`

#### Returns

`Promise`\<\{ `improvements`: `never`[]; `learnings`: `never`[]; `nextFocus`: `never`[]; `successRate`: `number`; \}\>

***

### registerComponent()

> **registerComponent**(`name`, `component`): `void`

Defined in: autonomous/autonomous-loop.js:40

Register a component for autonomous operation

#### Parameters

##### name

`any`

##### component

`any`

#### Returns

`void`

***

### start()

> **start**(): `Promise`\<`void`\>

Defined in: autonomous/autonomous-loop.js:54

Start the autonomous loop

#### Returns

`Promise`\<`void`\>

***

### stop()

> **stop**(): `void`

Defined in: autonomous/autonomous-loop.js:685

Stop the autonomous loop

#### Returns

`void`

***

### updateComponentStats()

> **updateComponentStats**(`componentName`, `success`): `void`

Defined in: autonomous/autonomous-loop.js:552

Update component statistics

#### Parameters

##### componentName

`any`

##### success

`any`

#### Returns

`void`

***

### wait()

> **wait**(`ms`): `Promise`\<`any`\>

Defined in: autonomous/autonomous-loop.js:693

Wait for specified duration

#### Parameters

##### ms

`any`

#### Returns

`Promise`\<`any`\>
